탭메뉴 적용시 more 링크를 다르게 적용하는 방법 > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

탭메뉴 적용시 more 링크를 다르게 적용하는 방법 정보

탭메뉴 적용시 more 링크를 다르게 적용하는 방법

본문

탭메뉴 적용시 more 링크를 다르게 적용하는 방법을 알고 싶어서...
여기까지는 적용했는데 게시판에 맞게 링크가 적용되어야 하는데 아직 제가 실력이 없어서 링크가 공지사항으로만 적용됩니다.
탭메뉴부분에서 해당 more 레이어를 바꿔 보여 주시면 된다고 하는데 제가 몰라서 이렇게 질문드립니다.
조금 쉽게 설명좀 부탁드릴께요.
적용한 부분 소스입니다.
<DIV id=layer1 style="position:absolute; z-index:1; visibility:visible; width:<?=$lsWidth?>px;"><a href="<?=$g4[bbs_path]?>/board.php?bo_table=<?=$tblN1?>"><img src="images/n6.gif" width="42" height="29" border="0"></a></DIV>
<DIV id=layer2 style="position:absolute; z-index:1; visibility:hidden; width:<?=$lsWidth?>px;"><a href="<?=$g4[bbs_path]?>/board.php?bo_table=<?=$tblN2?>"><img src="images/n6.gif" width="42" height="29" border="0"></a></DIV>  
<DIV id=layer3 style="position:absolute; z-index:1; visibility:hidden; width:<?=$lsWidth?>px;"><a href="<?=$g4[bbs_path]?>/board.php?bo_table=<?=$tblN3?>"><img src="images/n6.gif" width="42" height="29" border="0"></a></DIV>
<DIV id=layer4 style="position:absolute; z-index:1; visibility:hidden; width:<?=$lsWidth?>px;"><a href="<?=$g4[bbs_path]?>/board.php?bo_table=<?=$tblN4?>"><img src="images/n6.gif" width="42" height="29" border="0"></a></DIV>
 
여러가지로 회원님들께 감사~~ 감사~~
방금전에도 새나라어른님의 도움으로 문제를 해결했습니다.
좋은 답변좀 부탁드립니다.
행복하세요!

댓글 전체

위의 코드 외의 어딘가에
----------------------------------------
$tblN1="notice"; //공지사항 게시판 아이디가 notice라 가정할때
$tblN2="게시판아이디1";
$tblN3="게시판아이디2";
$tblN4="게시판아이디3";
----------------------------------------
와 같이 또는 비슷하게 정의되어 있는 부분이 있을듯한데요...
없다면 레이어가 표시되는 윗부분에 위와 같은 형식으로 각각의 게시판아이디를 지정해 주셔야 할듯...
먼저 답변해 주신 시그너스님께 감사드립니다.
네, 소스가 길어서 위부분은 올리지 못했습니다.
http://www.sir.co.kr/bbs/tb.php/g4_qa/47818
링크해 참고해 보시면 알 수 있습니다.
지난번에도 질문했는데 아직 여기까지만 해결하고 아직 해결 못했습니다.
그래서 이렇게 다시 질문드린 것립니다.
다시한번 답변 주셔서 감사드립니다.
문제를 해결 할 수 있도록 도와 주셨으면 하는 부탁드립니다.
감사~~ 감사~~
모어를 레이어로 처리하셨으니..

탭메뉴에서 해당 레이어를 바꿔주시는게 필요합니다.

<SCRIPT LANGUAGE="JavaScript">
<!--
function moreview(viewlayer){
document.all.layer1.style.visibility='hidden';
document.all.layer2.style.visibility='hidden';
document.all.layer3.style.visibility='hidden';
document.all.layer4.style.visibility='hidden';
viewlayer.style.visibility='visible';
}
//-->
</SCRIPT>

위 스크립트를 추가하신후

해당 탭에서
onmouseover="moreview(document.all.layer2)"
로 해당 모어링크 레이어를 보여주시면 됩니다.



스크립트에서는 모든 레이어를 감췄다가 해당 레이어를 보여주는 겁니다.
말씀해 주신 부분을 적용해 보았는데 제가 아직 잘 모르겠네요.
다시한번 설명해 주시면 문제가 해결 될 것 같습니다.
해당 탭에서
onmouseover="moreview(document.all.layer2)"
로 해당 모어링크 레이어를 보여주시면 됩니다. 라는 말을 이해 못했습니다.
이런식으로 각각 해당 레이어에 적용했더니
<DIV id=layer1 style="position:absolute; z-index:1; visibility:visible; width:<?=$lsWidth?>px;" onmouseover="moreview(document.all.layer2)">
모든 링크가 2번째 링크 적용한 자유게시판으로 more가 링크됩니다.
그래서 onmouseover="moreview(document.all.layer2)" 이부분에서 layer2를 각각 해당 레이어에 layer1, layer2, layer3, layer4로 적용했더니 이번에는 1번 링크로 적용한 공지사항으로 more가 모두 링크 적용됩니다.
참고로 탭메뉴로 공지사항 | 자유게시판 | 관람후기 | 보도자료 그리고 more로 구성되어 있습니다.
좋은 답변에 다시 감사드립니다.
다시 한번 설명해 주시면 문제 해결 될 것 같습니다.
감사~~ 감사~~
아직도 이해가 안됩니다. 죄송~~
onmouseover="moreview(document.all.layer2)"  부분은 탭메뉴에 넣으셔야 하는겁니다. 라는 말은
공지사항 | 자유게시판 나오는 탭메뉴에 넣으시라는 것이죠.
그런데 탭 메뉴의 이미지에 넣으시면 됩니다. 라는 말은 이해가 안됩니다.
이미지 어디 부분을 말씀하시는지...
아무튼 이렇게 적용해 보았는데 안되네요.
<td valign="top" width="35"><a href="<?=$g4[bbs_path]?>/board.php?bo_table=<?=$tblN1?>" onMouseOut="MM_swapImage('n1','','images/n1_2.gif',1)" onMouseOver="MM_swapImgRestore(),MM_swapImage('n1','','images/n1_2.gif',1),MM_showHideLayers('lsMenu1','','show','lsMenu2','','hide','lsMenu3','','hide','lsMenu4','','hide')" onfocus='this.blur()'><img name="n1" border="0" src="images/n1.gif" onmouseover="moreview(document.all.layer2)"></a></td>
죄송하네요. 제가 너무 몰라서...
그래도 한번 더 서비스로 가르쳐 주세요.
감사 ~~ 감사 ~~
"><a href="<?=$g4[bbs_path]?>/board.php?bo_table=<?=$tblN1?>" onMouseOut="MM_swapImage('n1','','images/n1_2.gif',1)" onMouseOver="MM_swapImgRestore(),

부분에서

onMouseOver="moreview(document.all.layer2),MM_swapImgRestore(),...

로 추가해주시면 됩니다.
a 테그에 마우스 오버 이벤트가 있내요
새나라어른님 정말 죄송하네요. 이렇게 여러번 설명해 주셨는데...
아직도 적용이 안되네요. 제가 어디를 잘 못하는지 계속 여러 번 적용해 보았는데...
그래서 소스 전체를 올립니다. 죄송하지만 한번 더 봐주세요. 부탁드립니다.
<!-- 다중최신글 -->
<script language="JavaScript" type="text/javascript">
<!--
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
    if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
      for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
        if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}
function MM_swapImgRestore() {
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() {
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
  var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function MM_swapImage() {
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
    if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</script>
<SCRIPT LANGUAGE="JavaScript">
<!--
function moreview(viewlayer){
document.all.layer1.style.visibility='hidden';
document.all.layer2.style.visibility='hidden';
document.all.layer3.style.visibility='hidden';
document.all.layer4.style.visibility='hidden';
viewlayer.style.visibility='visible';
}
//-->
</SCRIPT>

<table align=center width="113" height="<?=$tblHeight?>" border="0" cellpadding="0" cellspacing="0">
<tr>
<td height='<?=$btnHeight?>' width="113">
    <!-- menu -->
    <table width='100%' border="0" cellpadding="0" cellspacing="0">

<td valign="top" width="35"><a href="<?=$g4[bbs_path]?>/board.php?bo_table=<?=$tblN1?>" onMouseOut="MM_swapImage('n1','','images/n1_2.gif',1)" onMouseOver="moreview(document.all.layer2),MM_swapImgRestore(),MM_swapImage('n1','','images/n1_2.gif',1),MM_showHideLayers('lsMenu1','','show','lsMenu2','','hide','lsMenu3','','hide','lsMenu4','','hide')" onfocus='this.blur()'><img name="n1" border="0" src="images/n1.gif"></a></td>

    <td valign="top" width="35"><a href="<?=$g4[bbs_path]?>/board.php?bo_table=<?=$tblN2?>" onMouseOut="MM_swapImage('n2','','images/n2_2.gif',1)" onMouseOver="moreview(document.all.layer2),MM_swapImgRestore(),MM_swapImage('n2','','images/n2_2.gif',1),MM_showHideLayers('lsMenu1','','hide','lsMenu2','','show','lsMenu3','','hide','lsMenu4','','hide')" onfocus='this.blur()'><img name="n2" border="0" src="images/n2.gif"></a></td>

    <td valign="top" width="32"><a href="<?=$g4[bbs_path]?>/board.php?bo_table=<?=$tblN3?>" onMouseOut="MM_swapImage('n3','','images/n3_2.gif',1)" onMouseOver="moreview(document.all.layer2),MM_swapImgRestore(),MM_swapImage('n3','','images/n3_2.gif',1),MM_showHideLayers('lsMenu1','','hide','lsMenu2','','hide','lsMenu3','','show','lsMenu4','','hide')" onfocus='this.blur()'><img name="n3" border="0" src="images/n3.gif"></a></td>

    <td valign="top" width="32"><a href="<?=$g4[bbs_path]?>/board.php?bo_table=<?=$tblN4?>" onMouseOut="MM_swapImage('n4','','images/n4_2.gif',1)" onMouseOver="moreview(document.all.layer2),MM_swapImgRestore(),MM_swapImage('n4','','images/n4_2.gif',1),MM_showHideLayers('lsMenu1','','hide','lsMenu2','','hide','lsMenu3','','hide','lsMenu4','','show')" onfocus='this.blur()'><img name="n4" border="0" src="images/n4.gif"></a></td>

<td valign="top" width="32"><img src="images/n5.gif" width="45" height="29" border="0"></td>

 <td valign="top" width="32"><DIV id=layer1 style="position:absolute; z-index:1; visibility:visible; width:<?=$lsWidth?>px;"><a href="<?=$g4[bbs_path]?>/board.php?bo_table=<?=$tblN1?>"><img src="images/n6.gif" width="42" height="29" border="0"></a></DIV>
<DIV id=layer2 style="position:absolute; z-index:1; visibility:hidden; width:<?=$lsWidth?>px;"><a href="<?=$g4[bbs_path]?>/board.php?bo_table=<?=$tblN2?>"><img src="images/n6.gif" width="42" height="29" border="0"></a></DIV> 
<DIV id=layer3 style="position:absolute; z-index:1; visibility:hidden; width:<?=$lsWidth?>px;"><a href="<?=$g4[bbs_path]?>/board.php?bo_table=<?=$tblN3?>"><img src="images/n6.gif" width="42" height="29" border="0"></a></DIV>
<DIV id=layer4 style="position:absolute; z-index:1; visibility:hidden; width:<?=$lsWidth?>px;"><a href="<?=$g4[bbs_path]?>/board.php?bo_table=<?=$tblN4?>"><img src="images/n6.gif" width="42" height="29" border="0"></a></DIV>

</td>
                <tr align='center'>
                    <td height="8" valign="top" colspan="4"></td>
    </tr>
    </table>
</td>
</tr>
<tr>
<td align='center' valign="top" height="81">
            <table cellpadding="0" cellspacing="0" width="17">
                <tr>
                    <td width="17">
                        <table width="<?=$lsWidth?>" border="0" cellspacing="0" cellpadding="0">
                            <tr>
                                <td bgcolor='' height="100"></td>
                                <td bgcolor='' width="<?=$lsWidth?>" height="100" valign='top'>
                                    <!-- layer menu -->
                                    <div id="lsMenu1" style="position:absolute; z-index:1; visibility:visible; width:<?=$lsWidth?>px;">
                                        <?=latest($lsName, $tblN1, 4, 50);?></div>
                                    <div id="lsMenu2" style="position:absolute; z-index:1; visibility:hidden; width:<?=$lsWidth?>px;">
                                        <?=latest($lsName, $tblN2, 4, 50);?></div>
                                    <div id="lsMenu3" style="position:absolute; z-index:1; visibility:hidden; width:<?=$lsWidth?>px;">
                                        <?=latest($lsName, $tblN3, 4, 50);?></div>
                                    <div id="lsMenu4" style="position:absolute; z-index:1; visibility:hidden; width:<?=$lsWidth?>px;">
                                        <?=latest($lsName, $tblN4, 4, 50);?></div>
    </td>
                                <td bgcolor='' height="100"></td>
  </tr>
    </table></td>
                </tr>
            </table>
적용 후 결과 more링크가 2번째 자유게시판으로만 모두 링크됩니다.
수정해야 할 부분 다시 설명좀 부탁드립니다.
감사~~ 감사~~
아! 새나라어른님 문제를 해결했습니다.
onMouseOver="moreview(document.all.layer2),MM_swapImgRestore() 이 부분에서
layer1, layer2, layer3, layer4 이렇게 적용해서 문제를 해결했습니다.
여러가지로 도움 주셔서 감사드립니다.
감사~~ 감사~~
행복하세요! 너무 기쁘네요.
해결하셨다니 다행입니다.

레이어2는 샘플로 그렇게 하시라고 한거라..^^;;

그럼 언제나 즐거운 프로그램 하십시요..





a 테그는 id 속성을 부여해서 자바스크립트로 제어가 가능합니다.
id로 제어하는것도 함 찾아보세요..^^;;
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

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