채택완료

현재 선택된 메뉴 표시!

2014-09-20 (토) 09:58:51 11,098

그누보드 5에 들어있는 소스를 활용해서 왼쪽메뉴를 만들었는데요.

현재 선택된 메뉴에만 클래스를 추가해서 하이라이트를 주고싶습니다. 

(sir사이트의 오른쪽 메뉴보면 현재 메뉴에만 핑크로 하이라이트 되는 것 처럼~)

처음에는 현재 페이지의 me_code를 구한다면 쉽게 될 수 있을거라 생각했는데..

제가 php쪽으로는 지식이 매우 짧아서.ㅠㅠ..

li의 클래스에 depth1_on​ <--이게 들어가있는데 그 클래스가 현재 선택된 메뉴에만 나올 수 있도록 

팁좀 주세요!!

 

Copy
<ul class="lnb">				<?php				$sql = " select * from {$g5['menu_table']} where me_use = '1' and length(me_code) = '2' order by me_order, me_id ";				$result = sql_query($sql, false);				$gnb_zindex = 999; // gnb_1dli z-index 값 설정용				for ($i=0; $row=sql_fetch_array($result); $i++) {					if($i==5){break;};				?>				<li class="depth1_on" style="z-index:<?php echo $gnb_zindex--; ?>">					<a href="<?php echo $row['me_link']; ?>" target="_<?php echo $row['me_target']; ?>" class="menu0<?=$i + 1?>"><?php echo $row['me_name'] ?><?if($row['me_name'] == $board['bo_subject']){?>On<?}?><?=$gr_id?><?=$board['bo_table']?></a>					<?php					$sql2 = " 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, me_id ";					$result2 = sql_query($sql2);					for ($k=0; $row2=sql_fetch_array($result2); $k++) {					if($k == 0)					echo '					<ul class="lnb_sub">					'.PHP_EOL;					?>					<li class="depth2_on"><a href="<?php echo $row2['me_link']; ?>" target="_<?php echo $row2['me_target']; ?>"><?php echo $row2['me_name'] ?><?=$row2['me_code']?></a></li>					<?}					if($k > 0)					echo '				</ul>				'.PHP_EOL;				?>				</li>				<?}?>			</ul>

답변 1개

채택된 답변
+20 포인트

<? $on= $code == $row2['me_code']? 'depth2_on' : '';?>

<li class="<?=on?>"><a href="<?php echo $row2['me_link']; ?>&code=<?=$row2['me_code']?>" target="_<?php echo $row2['me_target']; ?>"><?php echo $row2['me_name'] ?><?=$row2['me_code']?></a></li> 

답변을 작성하려면 로그인이 필요합니다.