总结前面高手的经验再加上自己的实际测试, 发个获取当前栏目高亮的方法,适合所有栏目,包括一级、二级、三级
1、首先把wc提供的获取当前栏目id的自定义函数加入到 e/class/userfun.php 中。 调用时用<?=user_GetTopBclassid($GLOBALS[navclassid])?>动态获取当前栏目id以及父栏目id。 //取得顶级栏目ID函数 function user_GetTopBclassid($classid){ global $class_r; $fr=explode('|',$class_r[$classid][featherclass]); $topbclassid=$fr[1]?$fr[1]:$classid;//取得第一级栏目id return $topbclassid; } 2、导航列表用灵动标签调用
<ul class="menu"> <li id="current"><a href="/">首页</a></li> <!--灵动标签开始,这里调用的是所有一级栏目--> [e:loop={'select classid,classname,classpath,bclassid,bname from [!db.pre!]enewsclass where bclassid=0 order by classid',0,24,0}] <li id="current<?=$bqr[classid]?>"><a href="<?=$public_r[newsurl]?><?=$bqr[classpath]?>" title="<?=$bqr[bname]?>" target="_self" ><?=$bqr[classname]?></a></li> [/e:loop] <style type="text/css"><!--加入动态css样式--> <!-- #menu #current<?=user_GetTopBclassid($GLOBALS[navclassid])?> /*---动态获取当前栏目id -*/ {background:url(/images/2008a/bg_menu_on_left.gif) no-repeat; font-weight:bold;} #menu #current<?=user_GetTopBclassid($GLOBALS[navclassid])?> a,#menu #current<?=user_GetTopBclassid($GLOBALS[navclassid])?> a:hover{color:#000; background:url(/images/2008a/bg_menu_on_right.gif) no-repeat right;} --> </style> <!--灵动标签结束-->
PS: 这个导航的实际效果可以看一下 admin5.com 因为俺就是仿这个导航测试出来滴,O(∩_∩)O~
|