使用jquery将活动类动态添加到菜单项

使用jquery将活动类动态添加到菜单项,jquery,html,Jquery,Html,如何将“active”类添加到“li”标记而不是“a”标记。 我的代码: Alertnative#1-选择父项而不是子项 您可以使用选择器 var url = document.URL; $('#example li:has(a[href="'+url+'"])').addClass('active'); 备选方案#2-使用遍历函数到达父级 您可以使用该函数(如果锚点是列表项的直接子项) 另一个更通用的选项是使用函数(即使锚点不是列表项的直接子项,这也会起作用) 使用pa

如何将“active”类添加到“li”标记而不是“a”标记。 我的代码:

Alertnative#1-选择父项而不是子项 您可以使用选择器

var url = document.URL;
$('#example li:has(a[href="'+url+'"])').addClass('active');

备选方案#2-使用遍历函数到达父级 您可以使用该函数(如果锚点是列表项的直接子项)

另一个更通用的选项是使用函数(即使锚点不是列表项的直接子项,这也会起作用)


使用
parent
功能

var url = document.URL;
$('#example li a[href="'+url+'"]').parent().addClass('active');

假设html如下所示:

 <div id='example'>
    <li>
       <a></a>
    </li>
 </div>
var url = document.URL;
$('#example li a[href="'+url+'"]').closest("li").addClass('active');
var url = document.URL;
$('#example li a[href="'+url+'"]').parent().addClass('active');
 <div id='example'>
    <li>
       <a></a>
    </li>
 </div>
 var url = document.URL;
     $('#example li a').parent('li').attr('class','active');
     $('#example li a').attr('href',url);