后台的同事因为把nav公用了,所以无法单页添加active,一下方法通过判断url的后缀给当前页添加active
$(function(){ var _nava= $('.nav .nav-wrapper a'); var _url = window.location.href; var _host = window.location.host; for(var i = 0; i<_nava.length ; i++){ var _astr = _nava.eq(i).attr('href'); if(_url.indexOf(_astr) != -1){ _nava.eq(i).addClass('active').siblings().removeClass('active'); }else if(_url == ('http://'+_host+'/')){ _nava.eq(0).addClass('active').siblings().removeClass('active'); } } })
由于后台同事,类别分配不同往常;在点击一个导航进入后,可以正常运行,但是当点击某一条信息进入后,由于网址又是一个新的html,并没有包括在原来的类别内,之后通过网站地图判断
<script type="text/javascript"> $(function(){ var _nava= $('.nav .nav-wrapper a'); var _url = window.location.href; var _host = window.location.host; var _type = $('.news .position-search .position-search-wrapper .position a').eq(1).text();//网站地图“首页>新闻类别>新闻详情” for(var i = 0; i<_nava.length ; i++){ var _atext = _nava.eq(i).text(); var _astr = _nava.eq(i).attr('href'); if(_url.indexOf(_astr) != -1 || _atext == _type){//地图的类别和导航的文本对比,相同在该导航添加active _nava.eq(i).addClass('active').siblings().removeClass('active'); }else if(_url == ('http://'+_host+'/')){ _nava.eq(0).addClass('active').siblings().removeClass('active'); } } }) </script>