javascript - jQuery 更新父项上的类

标签 javascript jquery html

我有以下布局:

<ul id="header">
     <li id="item1" class="off">   <a>Abc</a>   </li>
     <li id="item2" class="off">   <a>Abc</a>   </li>
</ul>

当我单击 <a> 中的 href 时我想要<li>中的类(class)以便更新。

我尝试了以下方法,但没有成功:

$(".header > li a").click(function(){

      $(".header li a.current").removeClass("off");
        $(this).addClass("on");

});

有什么想法吗?

--编辑: 好吧,我刚刚意识到我没有正确地看待这个问题。

因此,当单击该链接时,会加载一个新页面。因此,使用单击功能是错误的,因为会加载新页面,因此对我的类所做的任何更改都将丢失。因此,我需要的是使用 $(document).ready(function()说“我点击了上一页中带有 id 的 li,所以现在更新该类”

所以

谢谢!

最佳答案

您可以使用closest()获取父级 li 然后添加类:

$(this).closest("li").addClass("on");

您还需要使用 id 选择器 $("#header") 而不是类选择器 $(".header"):

$("#header > li a").click(function(){

      $("#header li a.current").removeClass("off");
        $(this).closest("li").addClass("on");

});

FIDDLE DEMO

关于javascript - jQuery 更新父项上的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24203453/

相关文章:

javascript - Mongoose 查询在回调后挂起

jQuery .html()、.append() 不适用于多行标记

html - 如何修复属性溢出-y 在 CSS 级别 2.1 中不存在?

javascript - 通过页面上的某个点时使div显示

javascript - 找不到固定标题表的选择器

html - &nbsp 导致 HTML5 验证失败

javascript - jQuery 单击与 javascript 对象关联的元素上的触发器

javascript - 是否有用于设置值的最大或最小限制的 JS 短语法

javascript - react : How to send data on Popup close?

javascript - 文本栏的值未显示?