Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何将类名添加到特定选择器_Jquery - Fatal编程技术网

Jquery 如何将类名添加到特定选择器

Jquery 如何将类名添加到特定选择器,jquery,Jquery,考虑到以下html: <div class="box"> <ul class="tabs"> <li><a href="publication#all">ALL</a></li> <li><a href="publication#country">COUNTRY</a></li> <li><a href=

考虑到以下html:

<div class="box">
    <ul class="tabs">
        <li><a href="publication#all">ALL</a></li>
        <li><a href="publication#country">COUNTRY</a></li>
        <li><a href="publication#date">DATE</a></li>
    </ul>

    <div id="tab_all">...</div>

    <div id="tab_country">...</div>
    <div id="tab_date">...</div>
</div>
您可以通过以下方式进行选择:

$("#tab_date").siblings("ul.tabs").find("li a[href=publication#country]");
工作小提琴:

您可以通过以下方式选择它:

$("#tab_date").siblings("ul.tabs").find("li a[href=publication#country]");

工作小提琴:

你忘了收尾支架。试试这个:

$("#tab_date").siblings("ul.tabs").find("li a[href='publication#country']").addClass("current");

注意:我最初认为需要引用属性选择器值(因此我通常如上所述编写),但是根据Rhumborl的说法,并经Scott和我自己确认,在没有引用的情况下,它确实有效。但是,养成包含引号的习惯会更安全,以防遇到异常情况,忽略引号会导致问题。

您忘记了右括号。试试这个:

$("#tab_date").siblings("ul.tabs").find("li a[href='publication#country']").addClass("current");

注意:我最初认为需要引用属性选择器值(因此我通常如上所述编写),但是根据Rhumborl的说法,并经Scott和我自己确认,在没有引用的情况下,它确实有效。但是,养成包含引号的习惯会更安全,以防遇到异常情况,忽略引号会导致问题。

如何调试此类问题:将整个选择器查询放入控制台,然后按enter键。如果你得到一个空数组/对象,那么你的选择器就错了。是的,第二个选项是针对水蛭和懒惰的人。当然,你的问题没有错(我投了赞成票!)-调试技巧只是为了帮助你。更改$(“#tab_date”).sides(“ul.tabs”).find('li a[href=publication#country')到$(“#tab#date”).sides(“ul.tabs”).find(“li a[href='publication#country']”如何调试此类问题:将整个选择器查询放入控制台,然后按enter键。如果得到的是空数组/对象,则选择器是错误的。是的,第二个选项适用于水蛭和懒惰的人。当然,你的问题没有问题(我投了更高的票!)-调试技巧只是为了帮助您。将$(“#tab_date”).兄弟姐妹(“ul.tabs”).find('li a[href=publication#country')更改为$(“#tab_date”).兄弟姐妹(“ul.tabs”).find('li a[href='publication#country'))它在没有引用的情况下也能起作用,但使用它可能更安全anyway@Rhumborl啊,是的,你说得对。我只是仔细检查了一下,它确实有效,没有引用。@Marco没问题(如果可以的话,别忘了接受)。请一定听从Dan的建议,下次遇到jQuery选择器问题时,它将为您节省大量时间。它也可以在不引用它的情况下工作,但使用它可能更安全anyway@Rhumborl啊,是的,你说得对。我只是仔细检查了一下,它确实有效,没有引用。@Marco没问题(如果可以的话,别忘了接受)。一定要听从Dan的建议,下次遇到jQuery选择器问题时,这将为您节省大量时间。如果他在不同的部分下有相同的模式,它将不起作用。是的,但他没有指定所有其他情况。但是我明白您的观点,并更新了我的答案。我没有注意到,您注意到缺少的
]
+1 ood定位如果他在不同的部分下有相同的模式,它将不起作用。是的,但他没有指定所有其他情况。但是我明白你的观点并更新了我的答案。我没有注意到,你注意到缺少的
]
+1 ood定位