영카트 - 오늘본상품 레이어 변경방법 - 숨기기 할경우 전체 테이블 이동 하는것 수정 > 그누4 팁자료실

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

영카트 - 오늘본상품 레이어 변경방법 - 숨기기 할경우 전체 테이블 이동 하는것 수정 정보

영카트 - 오늘본상품 레이어 변경방법 - 숨기기 할경우 전체 테이블 이동 하는것 수정

첨부파일

boxtodayview.inc.php (5.3K) 116회 다운로드 2006-10-27 13:13:27
boxtodayview.inc.php (5.3K) 56회 다운로드 2006-10-27 16:18:02

본문

<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님의 설명적용 [호환]
추천
2

댓글 12개

document.body 태그는 IE 에서만 적용됩니다.

아래 코드를 이용하십시오.
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];
}

위에 세션 굽기 함수를 넣어주시면 세션을 굽기 요청하면 함수에서 구워서 값을 돌려 줄것입니다. 그럼 서버에 저장이 되고 레이어에서는 내가본 상품이 표시가 되는 로직입니다. 그럼 이만 설명을 줄이겠습니다.

@@;; 설명이 복잡하다거나 허접하다면 죄송합니다. __);;;

좋은하루되세요..^^
세션값을 저장하는 부분은 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에 넣어야 맞을까요???
레이어 소스를 보니 상품저장코드는 수정할 필요 없어 보이던데..
아... 역시 모르겠어요.
쇼핑몰 소스였군요..@
내부 소스는 잘모르지만,레이어 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도 제되로 못하는데 머이리도 할것이 많은지..
전체 3,313 |RSS
그누4 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT