如何从jquery选择器中排除单击的项及其所有父项?
在jquery脚本中,我试图从选择器中排除一个项及其所有父项:如何从jquery选择器中排除单击的项及其所有父项?,jquery,Jquery,在jquery脚本中,我试图从选择器中排除一个项及其所有父项: $(“.Navigation list--dropdown”).not($(this.parent()).addClass('is-hidden') 但它不起作用,有人知道为什么吗 这是完整的脚本: $(document).ready(function() { // When a dropdown trigger is clicked $('.Navigation-link--dropdownTrigger').click(
$(“.Navigation list--dropdown”).not($(this.parent()).addClass('is-hidden')代码>
但它不起作用,有人知道为什么吗
这是完整的脚本:
$(document).ready(function() {
// When a dropdown trigger is clicked
$('.Navigation-link--dropdownTrigger').click(function(e) {
// If its sibling dropdown list is hidden
if( $(this).siblings('.Navigation-list--dropdown').hasClass('is-hidden') ){
// Hide all other dropdown lists, except the clicked list and its parents
$(".Navigation-list--dropdown").not($(this).parent()).addClass('is-hidden');
// unhide only the dropdown whose trigger was clicked
$(this).siblings('.Navigation-list--dropdown').removeClass('is-hidden');
}
});
如果要排除此
及其所有父元素,请首先调用以获取完整的父元素链,然后应用以将原始元素(即此
)添加回集合:
$(".Navigation-list--dropdown")
.not($(this).parents().addBack())
.addClass("is-hidden");