영카트 - 오늘본상품 레이어 변경방법 - 숨기기 할경우 전체 테이블 이동 하는것 수정 정보
영카트 - 오늘본상품 레이어 변경방법 - 숨기기 할경우 전체 테이블 이동 하는것 수정첨부파일
본문
<div id="divToday" style="width:80px; height:0px; position:absolute; left:0px; top:0px; z-index:1; left:expression(document.body.clientWidth/2+490);">
이부분을 수정하시면 됩니다. 가운데 정렬일경우 사용하시면 됩니다.
document.body.clientWidth/2+490 <-- 이부분이 현제 화면크기의 중간에서 얼마로 이동되는 것입니다. 490이라는 수치를 바꾸셔서 사용하세요
PS) 영카트 구매 아이디는 별도 인데 그아이디는 커뮤니티를 하지않아 이렇게 개인 아이디로 올립니다.
올린 계기는 [추천사이트]에서 전부 제공되는 그되로 사용하셔서 오늘본 상품 숨기기를 누룰경우 전체 테이블이 옮겨지는 불상사(?)가 일어 나더군요. 그래서 올립니다.^^; 머 그게 컨셉이라면 할말없구요..^^*
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
다운로드 1: 기존설명 [ex기준]
다운로드 2: sjsjin님의 설명적용 [호환]
이부분을 수정하시면 됩니다. 가운데 정렬일경우 사용하시면 됩니다.
document.body.clientWidth/2+490 <-- 이부분이 현제 화면크기의 중간에서 얼마로 이동되는 것입니다. 490이라는 수치를 바꾸셔서 사용하세요
PS) 영카트 구매 아이디는 별도 인데 그아이디는 커뮤니티를 하지않아 이렇게 개인 아이디로 올립니다.
올린 계기는 [추천사이트]에서 전부 제공되는 그되로 사용하셔서 오늘본 상품 숨기기를 누룰경우 전체 테이블이 옮겨지는 불상사(?)가 일어 나더군요. 그래서 올립니다.^^; 머 그게 컨셉이라면 할말없구요..^^*
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
다운로드 1: 기존설명 [ex기준]
다운로드 2: sjsjin님의 설명적용 [호환]
추천
2
2
댓글 12개
document.body 태그는 IE 에서만 적용됩니다.
아래 코드를 이용하십시오.
screen.width / 2 + 490 + 'px'; // 브라우저/해상도 구분없는 절대 x좌표
* 레이어의 절대좌표(브라우저/해상도 구분없는) 값 구하는 스크립트는 팁&테크의 스크립트 펑션에서 검색해 보시면 있습니다.
참고 하십시오.
아래 코드를 이용하십시오.
screen.width / 2 + 490 + 'px'; // 브라우저/해상도 구분없는 절대 x좌표
* 레이어의 절대좌표(브라우저/해상도 구분없는) 값 구하는 스크립트는 팁&테크의 스크립트 펑션에서 검색해 보시면 있습니다.
참고 하십시오.
어라? 이거 영카트 말고 그누보드에서 특정 게시판에 적용은 불가능한가요???
나 이소스 찾아 삼만리 였는데.. 으흐~
나 이소스 찾아 삼만리 였는데.. 으흐~
가능합니다. 단지 저위에 있는 소스는 레이어 소스입니다. 레이어에 여러가지 옵션이 들어가서 복잡하게 보이는데 전혀 신경쓰지마시구 레이어 부분이라고 판단 하시면 됩니다.
그리고 각각 세션을 굽는 파일은 /shop/item.php 파일에 있는데
// 오늘 본 상품 저장 시작
// tv 는 today view 약자
$saved = false;
$tv_idx = (int)get_session("ss_tv_idx");
if ($tv_idx > 0)
{
for ($i=1; $i<=$tv_idx; $i++)
{
if (get_session("ss_tv[$i]") == $it_id)
{
$saved = true;
break;
}
}
}
이부분입니다. 현제 적용하시고 싶은 게시판에 특정필드의 세션을 저장 하는형식으로 변형하시면 될것입니다.
이외에 파일이 머가 있었다가..@@;
아..function이 빠졌군요... lib에 아무 파일이나 아님 develop.lib.php있을 것입니다. 없으면 아부대나 새로 만드셔도 됩니다.
// 세션변수 생성
function set_session($session_name, $value)
{
session_register($session_name);
// PHP 버전별 차이를 없애기 위한 방법
$$session_name = $_SESSION["$session_name"] = $value;
}
// 세션변수값 얻음
function get_session($session_name)
{
return $_SESSION[$session_name];
}
위에 세션 굽기 함수를 넣어주시면 세션을 굽기 요청하면 함수에서 구워서 값을 돌려 줄것입니다. 그럼 서버에 저장이 되고 레이어에서는 내가본 상품이 표시가 되는 로직입니다. 그럼 이만 설명을 줄이겠습니다.
@@;; 설명이 복잡하다거나 허접하다면 죄송합니다. __);;;
좋은하루되세요..^^
그리고 각각 세션을 굽는 파일은 /shop/item.php 파일에 있는데
// 오늘 본 상품 저장 시작
// tv 는 today view 약자
$saved = false;
$tv_idx = (int)get_session("ss_tv_idx");
if ($tv_idx > 0)
{
for ($i=1; $i<=$tv_idx; $i++)
{
if (get_session("ss_tv[$i]") == $it_id)
{
$saved = true;
break;
}
}
}
이부분입니다. 현제 적용하시고 싶은 게시판에 특정필드의 세션을 저장 하는형식으로 변형하시면 될것입니다.
이외에 파일이 머가 있었다가..@@;
아..function이 빠졌군요... lib에 아무 파일이나 아님 develop.lib.php있을 것입니다. 없으면 아부대나 새로 만드셔도 됩니다.
// 세션변수 생성
function set_session($session_name, $value)
{
session_register($session_name);
// PHP 버전별 차이를 없애기 위한 방법
$$session_name = $_SESSION["$session_name"] = $value;
}
// 세션변수값 얻음
function get_session($session_name)
{
return $_SESSION[$session_name];
}
위에 세션 굽기 함수를 넣어주시면 세션을 굽기 요청하면 함수에서 구워서 값을 돌려 줄것입니다. 그럼 서버에 저장이 되고 레이어에서는 내가본 상품이 표시가 되는 로직입니다. 그럼 이만 설명을 줄이겠습니다.
@@;; 설명이 복잡하다거나 허접하다면 죄송합니다. __);;;
좋은하루되세요..^^
세션값을 저장하는 부분은 common.lib.php에 있어서 따로 저장안했는데요//
// 오늘 본 상품 저장 시작
// tv 는 today view 약자
$saved = false;
$tv_idx = (int)get_session("ss_tv_idx");
if ($tv_idx > 0)
{
for ($i=1; $i<=$tv_idx; $i++)
{
if (get_session("ss_tv[$i]") == $it_id)
{
$saved = true;
break;
}
}
}
이부분은 특정게시판의 view.skin.php에 넣었는데.. 세션저장이 안되더군요.. 허허.. ^^;;
/shop/item.php 의 소스라고한다면..
위 소스는 /bbs/board.php에 넣어야 맞을까요???
레이어 소스를 보니 상품저장코드는 수정할 필요 없어 보이던데..
아... 역시 모르겠어요.
// 오늘 본 상품 저장 시작
// tv 는 today view 약자
$saved = false;
$tv_idx = (int)get_session("ss_tv_idx");
if ($tv_idx > 0)
{
for ($i=1; $i<=$tv_idx; $i++)
{
if (get_session("ss_tv[$i]") == $it_id)
{
$saved = true;
break;
}
}
}
이부분은 특정게시판의 view.skin.php에 넣었는데.. 세션저장이 안되더군요.. 허허.. ^^;;
/shop/item.php 의 소스라고한다면..
위 소스는 /bbs/board.php에 넣어야 맞을까요???
레이어 소스를 보니 상품저장코드는 수정할 필요 없어 보이던데..
아... 역시 모르겠어요.
당연히 그되로 넣으시면 안됩니다.
$it_id 값이 없기 때문이죠.
변형이 필요합니다. ^^*
로직을 그되로 쓰시면 됩니다.
$it_id 값이 없기 때문이죠.
변형이 필요합니다. ^^*
로직을 그되로 쓰시면 됩니다.
참고로 body 는 IE4, NS6, FF (이상)에서 작동 됩니다.
아,
제가 착각했나 봅니다. ㅡㅡ;
제가 착각했나 봅니다. ㅡㅡ;
쇼핑몰 소스였군요..@
내부 소스는 잘모르지만,레이어 body 텍소스가 잘 맞으면 좋겠지만 아마 위의 브라우저에 해당되지 않거나
해상도 변경시 위치조정이 문제가 될것으로 보여집니다.
아래의 소스를 인용하시면 한결 부드러운 소스가 될 것같습니다.
도움이 될라나 모르겠네요.
===============================================
<body onresize="javascript:centerWindow();" onload="centerWindow();">
<script language="JavaScript">
<!--
function centerWindow() {
var xMax = document.body.clientWidth, yMax = document.body.clientHeight;
var xOffset = (xMax-200)/2+20, yOffset = (yMax-150)/2+40;
//중심에서 오른쪽으로 20, 아래로 40픽셀에 항상 위치하는 레이어
var divMenu = document.all['Layer1'].style;
divMenu.top = yOffset;
divMenu.left = xOffset;
}
//centerWindow();
//-->
</script>
<div id="Layer1" style="position:absolute; left:200px; top:80px; width:200px; height:150px; z-index:1">
<table width="200" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center" bgcolor=#FFFFFF style="border:#808080 1px solid;" height=150>
<span style="font-family:굴림; font-size:9pt">클라이언트 화면 중심에 띄워보았다네!</span>
</tr>
</table>
</div>
내부 소스는 잘모르지만,레이어 body 텍소스가 잘 맞으면 좋겠지만 아마 위의 브라우저에 해당되지 않거나
해상도 변경시 위치조정이 문제가 될것으로 보여집니다.
아래의 소스를 인용하시면 한결 부드러운 소스가 될 것같습니다.
도움이 될라나 모르겠네요.
===============================================
<body onresize="javascript:centerWindow();" onload="centerWindow();">
<script language="JavaScript">
<!--
function centerWindow() {
var xMax = document.body.clientWidth, yMax = document.body.clientHeight;
var xOffset = (xMax-200)/2+20, yOffset = (yMax-150)/2+40;
//중심에서 오른쪽으로 20, 아래로 40픽셀에 항상 위치하는 레이어
var divMenu = document.all['Layer1'].style;
divMenu.top = yOffset;
divMenu.left = xOffset;
}
//centerWindow();
//-->
</script>
<div id="Layer1" style="position:absolute; left:200px; top:80px; width:200px; height:150px; z-index:1">
<table width="200" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center" bgcolor=#FFFFFF style="border:#808080 1px solid;" height=150>
<span style="font-family:굴림; font-size:9pt">클라이언트 화면 중심에 띄워보았다네!</span>
</tr>
</table>
</div>
굿~~ MCLUB님한테 오히려 받아가네요..^^* 감사합니다.
### 테스트 레포트 ###
현제 적용하면 한가지 아쉬운 점이 생기는군요.
점프하는 현상이 발생하는데.
다시말씀드려 좌우 정렬 문제인데.
var xOffset = (xMax-200)/2+590 위치값을 가져오는 것인데 body에서 로드되는 시간이 최상위로 보내게 되어도 약간의 시간차가 생겨 점프하는 현상이 발생하여
<div style="position:absolute; left:expression(screen.width / 2 + 475 + 'px');" > 이렇게 조합을 해보았습니다.
하지만 보다 브드럽게 처리 되었으면 하는데 위의 로드되는 것말구 다른방식은 조언이 가능하신가요?
제가 무신말을 하는지..ㅡㅡ;
아무튼 body에서 로드되는 것말구 스크립트 자체에서 값을 가져와서 위치값 점프를 하지않고 초기부터 제위치에 박히는것은 가능한지 조언부탁드려요.
자바는 아직 기초를 못벗어나.. ㅠ,.ㅠ 아...갈길이....아직 php도 제되로 못하는데 머이리도 할것이 많은지..
### 테스트 레포트 ###
현제 적용하면 한가지 아쉬운 점이 생기는군요.
점프하는 현상이 발생하는데.
다시말씀드려 좌우 정렬 문제인데.
var xOffset = (xMax-200)/2+590 위치값을 가져오는 것인데 body에서 로드되는 시간이 최상위로 보내게 되어도 약간의 시간차가 생겨 점프하는 현상이 발생하여
<div style="position:absolute; left:expression(screen.width / 2 + 475 + 'px');" > 이렇게 조합을 해보았습니다.
하지만 보다 브드럽게 처리 되었으면 하는데 위의 로드되는 것말구 다른방식은 조언이 가능하신가요?
제가 무신말을 하는지..ㅡㅡ;
아무튼 body에서 로드되는 것말구 스크립트 자체에서 값을 가져와서 위치값 점프를 하지않고 초기부터 제위치에 박히는것은 가능한지 조언부탁드려요.
자바는 아직 기초를 못벗어나.. ㅠ,.ㅠ 아...갈길이....아직 php도 제되로 못하는데 머이리도 할것이 많은지..
오,, 쇼핑몰 오픈하는데 도움 많이 될 것 같습니다.
감사합니다
adsfasfasdfasdf