帝国CMS导航栏js高亮当前栏目,使用JS方法修改改造。

高亮显示导航栏代码,通用方式,包括所在内容页
看了下论坛,大家基本使用的是灵动标签来实现当前栏高亮,我这个方法是根据js来实现的。如果需要你就试下吧

方法如下,大家可以举一

高亮显示导航栏代码,通用方式,包括所在内容页 
看了下论坛,大家基本使用的是灵动标签来实现当前栏高亮,我这个方法是根据js来实现的。如果需要你就试下吧

方法如下,大家可以举一反三,其实是很简单的修改:

<div class="header">
    <ul class="menu mct" id="navi">
      <li><a href="/">首页</a></li>
      <li><a href="/wangluodongtai/">网络动态</a></li>
      <li><a href="/youhuajiqiao/">优化技巧</a></li>
      <li><a href="/huozaidangxia/">活在当下</a></li>
      <li><a href="/woaibiancheng/">我爱编程</a></li>
      <li><a href="/xiaojiqiao/">小技巧</a></li>
      <li><a href="/hulianwangwen/">互联网文</a></li>
    </ul>
</div>
<script type="text/javascript" language="javascript">
var nav = document.getElementById("navi");
var links = nav.getElementsByTagName("li");
var lilen = nav.getElementsByTagName("a"); //判断地址
var currenturl = document.location.href;
var last = 0;
for (var i=0;i<links.length;i++)
{
   var linkurl =  lilen[i].getAttribute("href");
     if(currenturl.indexOf(linkurl)!=-1)
        {
         last = i;
        }
}
         links[last].className = "menufirst";  //高亮代码样式
</script>

说明:  <ul class="menu mct" id="navi">  中的ID值(id="navi")要和 var nav = document.getElementById("navi"); 中的想同,即在js中获取id="navi" 值,这个值要唯一,不能跟其它CSS或JS代码中ID同名,或者自己改成别的名字。

        links[last].className = "menufirst";  这一句中的 menufirst 为你的高亮样式。

-------------------------------------------------------------------------
例如:

<div id="main-nav"><div class="wrap cf">
    <ul id="navi3" class="menu"><li ><a href="[!--news.url--]">首页</a></li>
[e:loop={"select classname,classpath from [!db.pre!]enewsclass where bclassid=58 order by classid ",0,24,0}]
<li><a href="<?=$public_r[newsurl]?><?=$bqr[classpath]?>"><?=$bqr[classname]?></a></li>
[/e:loop]        
</ul></div>
<script type="text/javascript" language="javascript">
var nav = document.getElementById("navi3");
var links = nav.getElementsByTagName("li");
var lilen = nav.getElementsByTagName("a"); //判断地址
var currenturl = document.location.href;
var last = 0;
for (var i=0;i<links.length;i++)
{
   var linkurl =  lilen[i].getAttribute("href");
     if(currenturl.indexOf(linkurl)!=-1)
        {
         last = i;
        }
}
         links[last].className = "current-menu-item";  //高亮代码样式
</script>

PS.由于前期整理文章没有进行格式化信息处理,导致有些包含代码修改的信息,格式混乱看不清楚。如果发现有此类问题,请在下方评论留言,小编第一时间进行格式化整理!感谢配合

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
dedecms教程

帝国CMS调用发布者所有文章列表的两种方法!包含高级应用!

2019-9-4 23:47:52

dedecms教程

帝国CMS[带模板的栏目导航标签] 支持栏目别名调用修改方法

2019-9-4 23:48:04

!
你也想出现在这里?立即 联系我们吧!
信息
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
搜索