그누보드 메뉴 active 질문있습니다.. 채택완료
찌니짱
5년 전
조회 3,408
</p>
<p><?php
$parent_menu_sql = "select *
from {$g5['menu_table']}
where me_use = '1'
and length(me_code) = '2'
order by me_order";
$parent_menu_res = sql_query($parent_menu_sql);</p>
<p> for($i=0;$row=sql_fetch_array($parent_menu_res);$i++){
$menu_sql = " select *
from {$g5['menu_table']}
where me_use = '1'
and length(me_code) = '4'
and substring(me_code, 1, 2) = '{$row['me_code']}'
order by me_order ";
$menu_res = sql_query($menu_sql);</p>
<p> ?>
<li class="treeview">
<a href="<?=$row[me_link]?>">
<span><?=$row[me_name]?></span>
</a>
<ul class="treeview-menu">
<?</p>
<p> for($k=0;$row2=sql_fetch_array($menu_res);$k++){?>
<li class="<?php if(strpos($_SERVER['REQUEST_URI'],$row2[me_link]) !== false){?>active<?php }?>">
<a href="<?=$row2[me_link]?>">- <?=$row2[me_name]?></a>
</li>
<?}?>
</ul>
</li>
<?}?> </p>
<p>
메뉴를 이렇게 뿌리는데 하위 메뉴는 현재 url과 me_link 비교해서 active 주면될거같은데
active 된 li 그 상위 부모li (treeview)에도 active를 주려면 어떻게 해야하나요?..
댓글을 작성하려면 로그인이 필요합니다.
답변 2개
채택된 답변
+20 포인트
5년 전
일단 올리신 방법으로 문제되는게 게시판같은 링크를 달경우
/bbs/board.php?bo_table=notice
글쓰기나 상세페이지 갔을때 서브메뉴에서 active가 안걸립니다. 변수때문에 일치하지 않으니까요.
/bbs/board.php?bo_table=notice&wr_id=11
질문하신 소스에서 원하시는 부분만 구현하자면 ob함수로 서브메뉴를 미리 돌려서 active가 있으면 부모 $parent_active가 true가 되면서active클래스가 추가됩니다.
>
=$row[me_name]?>
}?>
로그인 후 평가할 수 있습니다
답변에 대한 댓글 1개
�
찌니짱
5년 전
이렇게 해도 페이지가 변하면 상위 active가 사라지네요 ㅠ
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인