近日,在论坛找了一些“当前栏目高亮”的帖子,经过测试都不能满足我的需求。 我的需求: 自定义页面head.html作为首页、封面模板、列表模板和内容模板以及其他自定义页面要include的公共页面,<!--#include virtual="head.html"-->,方便日后更新栏目导航,不需要重新生成所有引用到栏目导航的页面。方便,快捷,省事。 论坛看了几个当前栏目高亮的帖子,一个是修改“userfun.php”,缺点是:不能应用到自定义页面 二是,针对不同的栏目设置不同的css,感觉麻烦。
几经周折,终于搞定。发上来给大家分享,此方法简单,适用于多种页面(首页、封面模板、列表模板、内容模板、自定义页面、自定义列表) 【自定义页面:head.html】代码
<div class="header"> <div class="navC"> <ul class="nav box990 f14" id="nav"> <li><a href="[!--news.url--]" title="首页" target="_self" id="home">首 页</a></li> [e:loop={'select classid,classname,classpath from [!db.pre!]enewsclass where bclassid=0 and showclass=0 order by myorder',0,24,0}] <li><a id="cid<?=$bqr[classid]?>" href="<?=$public_r[newsurl]?><?=$bqr[classpath]?>" target="_self" ><?=$bqr[classname]?></a></li> [/e:loop] <!--<li><a href="http://www.baidu.com/a/" target="_self" id="cid1">A栏目</a></li>--> </ul> </div> </div> <!--当是在首页的时候,id=“home”的li高亮显示,也就是首页高亮--> <script type="text/javascript"> if(document.URL=="http://www.你网站域名.com/"||document.URL=="http://www.你网站域名.com/"){document.getElementById("home").className="cur";} </script> <!--end of header-->
【封面、列表、内容或自定义页面】代码:
<!--#include virtual="/head.html"--> <script type="text/javascript"> var myid = document.getElementById('cid[!--self.classid--]'); myid.className = 'cur'; </script>
【CSS样式表】
<style> .nav a.cur,.header .nav a:hover{background:url(../pic/navCur.png) no-repeat; color:#fff; text-decoration:none;} </style>
|