如何从当前URL获取活动链接

时间:2015-04-24 06:28:29

标签: jquery

我有这个代码来获取一个活动链接,但是它将类current添加到所有li而不仅仅是当前。

这是我的代码:

jQuery(document).ready(function ($) {
    var url = window.location.href;
    $('.ribbon a').filter(function () {
        return this.href == url;
    }).closest('li').addClass('current_yes');
});

这是我的html菜单代码:

<!-- Responsive menu -->
<div class="ribbon">
<div class="rmm style">

<ul>
<li>
<a href="./index.html">HOME</a>
</li>
<li>
<a href="">PROJECTS</a>
<ul>
<li>
<a href="">IKEA - NORWAY</a>
</li>
<li>
<a href="">FASTEC - SWEDEN</a>
</li>
</ul>
</li>
<li>
<a href="./clients.html">CLIENTS</a>
<ul>
<li>
<a href="">IKEA</a>
</li>
<li>
<a href="">FASTEC</a>
</li>
</ul>
</li>
<li>
<a href="">CONTACT US</a>
</li>
<li>
<a href="">WEBSHOP</a>
</li>
<li>
<a href="">ADMIN</a>
<ul>
<li>
<a href="">STAFF</a>
</li>
<li>
<a href="">DOCUMENTS</a>
</li>
</ul>
</li>
</ul>

</div>
</div>

2 个答案:

答案 0 :(得分:0)

您可以通过更简单的方式完成此操作,因为使用jQuery,您可以按其属性选择元素。

$(function() {
    var url = window.location.href;
    $('.ribbon a[href="'+url+'"]').addClass('current_yes');
});

答案 1 :(得分:0)

jQuery(document).ready(function ($) {
  $('.ribbon a').each(function() {
    if ($(this).attr('href')  ===  window.location.pathname) {
      $(this).addClass('current_yes');
    }
  });
});