我一直在思考如何通过使用将通过url过滤的jquery在侧边栏菜单上添加活动类。
这是当前页面处于活动状态时当前添加活动类的方式:
<?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,然后使用jquery查找具有与当前URL相同的URL的锚。比较之后,我将获得<li>
的父<a>
并添加活动类。
答案 0 :(得分:0)
您可以通过属性比较轻松地查询元素,例如:
$('a[href="' window.location.href '"]').addClass('active');
只需将其放入文档就绪范围/事件处理程序中即可。