关闭

jQuery对底部导航进行跳转并高亮显示

时间: 2019-04-23阅读: 888标签: 导航

这两天弄一个mui的底部菜单,有点费时了,尝试了用vue写,纯js写,还有根据mui的写,还是有些问题和麻烦。直到看了网上的一些例子,才想明白,之前一直是一种点击触发事件才高亮的思维去做,这个虽然可以了,但是页面跳转了就又都没了。网上看明白的例子是:让当前页面地址与导航里的地址做对比,相同就高亮,之前思维太死,一直以点击才触发事件来写,结果问题好几个。接下来上代码

<style>
.active{ color:#D96C00;}/*高亮样式*/
</style>


这里就放菜单部分代码,在针对vue写菜单的时候,是把导航写到data,再循环遍历输出,最终由于购物车的数字角标显示问题而放弃,采用jQuery了

<nav class="mui-bar mui-bar-tab" id="menu">
    <a href="menuTest.html" rel="menuTest.html" class="mui-tab-item"><!-- rel是作对比的-->
        <span class="fa fa-home"></span>
        <span class="mui-tab-label">首页</span>
    </a>
    <a href="service.html" rel="service.html" class="mui-tab-item">
        <span class="mui-icon iconfont icon-shop"></span>
        <span class="mui-tab-label">客服</span>
    </a>
    <a href="shopcart.html" rel="shopcart.htmlmargin: 0px; padding: 0px; font-family: "Courier New" !important; font-size: 12px !important; line-height: 1.5 !important; color: rgb(255, 0, 0);">mui-tab-item">
        <span class="mui-icon iconfont icon-gouwuche"><span class="mui-badge">5</span></span>
        <span class="mui-tab-label">购物车</span>
    </a>
    <a href="me.html" rel="me.html" class="mui-tab-item">
        <span class="fa fa-user-circle-o"></span>
        <span class="mui-tab-label">我的</span>
    </a>
</nav>


接下来是jQuery语句

var urlstr = location.href;    //获取浏览器的url
  var urlstatus=false;  
  $('#menu a').each(function() {
      if ((urlstr + '/').indexOf($(this).attr('rel')) > -1&&$(this).attr('rel')!='') {
            // 为当前点击的导航加上高亮,其余的移除高亮
            $(this).find('span').addClass('active');
            urlstatus = true;
        } else {
          $(this).removeClass('active');
        }
    });
  if (!urlstatus) {
      $("#menu a span").eq(0).addClass('active'); //默认首页图标高亮
  }



站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

2.广告联盟: 整理了目前主流的广告联盟平台,如果你有流量,可以作为参考选择适合你的平台点击进入

链接: http://www.fly63.com/article/detial/3026

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!