Javascript 返回未定义的jQuery选择器

Javascript 返回未定义的jQuery选择器,javascript,jquery,Javascript,Jquery,所以我有一个名为question\u image1的div类,里面有大约四个标签。我的输入被包装在标签中,因此我没有对标签的属性使用 我试图选择所有不是在类中单击的标签 $(".question_image1").click(function(event) { $('.question_image1 label').not(event.target).style.opacity = "30%"; }); 这里有明显的问题吗?一种可能性是,在问题_

所以我有一个名为
question\u image1
的div类,里面有大约四个标签。我的输入被包装在标签
中,因此我没有对标签的
属性使用

我试图选择所有不是在类中单击的标签

$(".question_image1").click(function(event) {
    $('.question_image1 label').not(event.target).style.opacity = "30%";
});

这里有明显的问题吗?一种可能性是,在问题_image1类和标签之间有一个div级别。这会是一个问题吗?

您试图在jQuery对象上使用DOM
样式
属性。使用jQuery
.css()
方法

$('.question_image1 label').not(event.target).css("opacity", "30%");
但是由于事件冒泡,目标将是多个元素。所以我认为你应该使用

$('.question_image1').not(this).find("label").css("opacity", "30%");

将是事件绑定到的元素。

您试图在jQuery对象上使用DOM
样式
属性。使用jQuery
.css()
方法

$('.question_image1 label').not(event.target).css("opacity", "30%");
但是由于事件冒泡,目标将是多个元素。所以我认为你应该使用

$('.question_image1').not(this).find("label").css("opacity", "30%");

将是事件绑定到的元素。

代码正在更改所有标签,包括目标标签(由console.log确认)。有什么想法吗?
event.target
是一个DIV,而不是label.console.log打印一个img和输入元素。要么event.target是包含这两个元素的标签,要么propogation使其成为两个元素都被单击的标签,对吗?如何使其仅更改未单击的图像?这是事件冒泡。请使用
$(this)
而不是
$(event.target)
。或者可能是
$(event.currentTarget)
。代码正在更改所有标签,包括作为目标的标签(由console.log确认)。有什么想法吗?
event.target
是一个DIV,而不是label.console.log打印一个img和输入元素。要么event.target是包含这两个元素的标签,要么propogation使其成为两个元素都被单击的标签,对吗?如何使其仅更改未单击的图像?这是事件冒泡。请使用
$(this)
而不是
$(event.target)
。或者可能
$(event.currentTarget)