Jquery 当我单击除此之外的任何内容时,如何更改此的css?

Jquery 当我单击除此之外的任何内容时,如何更改此的css?,jquery,css,click,Jquery,Css,Click,我试图通过点击屏幕上的其他任何地方来更改菜单项的css。这是在已经点击了css属性并将其从默认设置更改为css后,重置它们的css属性 如果我有一个带有id=“linkitem”的列表项,如何单击除#linkitem以外的任何内容来更改它的css 谢谢 您需要一个负数选择器 $(':not(#linkitem)').click(function(){ //insert code here }); 你需要一个负选择器 $(':not(#linkitem)').click(funct

我试图通过点击屏幕上的其他任何地方来更改菜单项的css。这是在已经点击了css属性并将其从默认设置更改为css后,重置它们的css属性

如果我有一个带有
id=“linkitem”
的列表项,如何单击除
#linkitem
以外的任何内容来更改它的css

谢谢


您需要一个负数选择器

$(':not(#linkitem)').click(function(){
    //insert code here
});

你需要一个负选择器

$(':not(#linkitem)').click(function(){
    //insert code here
});

我不知道你的意思,但你可以简单地做:

$(":not(#linkitem)").on('click',function(){
    alert("I was callled");
}

我不知道你的意思,但你可以简单地做:

$(":not(#linkitem)").on('click',function(){
    alert("I was callled");
}

请注意,在两个不同的元素上不应该有相同的id。它不是有效的HTML。我建议改用
linkitem
类。您使用
.classname
而不是
#idname
引用类。请注意,您不应该在两个不同的元素上使用相同的id。它不是有效的HTML。我建议改用
linkitem
类。您使用
.classname
而不是
#idname
引用类。它是否应该是:if(e.target.id=='linkitem'){…}?它是否应该是:if(e.target.id=='linkitem'){…}?jQuery的psuedo选择器无法利用
querySelectorAll()
。jQuery的psuedo选择器无法利用
queryselectoral()
提供的性能提升。谢谢,你能把第二行分解一下,让我能更好地理解它吗?@crm-单击文档,意味着单击任意位置时会触发单击功能。e、 target将是被单击的实际元素,我们使用closest()检查实际被单击的元素是否具有该ID,或者是否具有具有该ID的父元素,这意味着被单击的元素位于#linkitem元素内,如果被单击的元素不在#linkitem内,并且被单击的元素本身不在#linkitem内,你点击了其他地方。谢谢,你能把第二行分解一下,让我更好地理解它吗?@crm-点击文档,意味着点击任何地方都会触发点击功能。e、 target将是被单击的实际元素,我们使用closest()检查实际被单击的元素是否具有该ID,或者是否具有具有该ID的父元素,这意味着被单击的元素位于#linkitem元素内,如果被单击的元素不在#linkitem内,并且被单击的元素本身不在#linkitem内,你点击了其他地方。
$(":not(#linkitem)").on('click',function(){
    alert("I was callled");
}