查找与页面当前 url 具有相同 url 的锚点

Finding anchor which having the same url as current url of a page

我一直在思考如何使用 jquery 在我的侧边栏菜单上添加活动的 class,它将被 url 过滤。

这是我当前在页面处于活动状态时添加活动 class 的方式:

<?php
  $seg1 = $this->uri->segment(1);
  $seg2 = $this->uri->segment(2);
  $seg3 = $this->uri->segment(3);
  $seg4 = $this->uri->segment(4);
?>

<li class="treeview <?php echo $seg1 == 'media' ? 'menu-open active' : '' ?>">
    <a href="#">
      <i class="fa fa-image"></i><span>Media Library</span>
      <span class="pull-right-container">
        <i class="fa fa-angle-left pull-right"></i>
      </span>
    </a>
    <ul class="treeview-menu">
      <li class="<?php echo $seg1 == 'media' && $seg2 == 'images' ? 'menu-open active' : ''; ?>">
        <a href="<?php echo base_url(); ?>media/images">Images</a>
      </li>
      <li class="<?php echo $seg1 == 'media' && $seg2 == 'videos' ? 'menu-open active' : ''; ?>">
        <a href="<?php echo base_url(); ?>media/videos">Videos</a>
      </li>
    </ul>
</li>

我想做的是通过简单地使用 CI 就绪函数 current_url() 获取当前页面 url,然后找到具有相同 url 作为当前 url 通过使用 jquery。比较后,我将获得 <a> 的父级 <li> 并添加活动 class.

您可以通过属性比较轻松查询元素,例如:

$('a[href="' window.location.href '"]').addClass('active');

只需将其放入文档就绪范围/事件处理程序即可。