Javascript 在使用e.target之后,如何获取整个(父)元素而不仅仅是特定的子元素
在下面的代码中,我想以Javascript 在使用e.target之后,如何获取整个(父)元素而不仅仅是特定的子元素,javascript,jquery,html,events,Javascript,Jquery,Html,Events,在下面的代码中,我想以li为目标,查看是否单击了li。目前,当我点击li的文本时,e.target是span,它是li的子元素,所以我好像没有点击li(我猜e.target是非常具体的)。li位于下拉菜单中,因此我使用e.target来获取用户想要的选项。如果用户选择带有class 1 set全局变量的li。如果用户选择类为2的li,则设置一个diff全局变量。什么是针对整个li的最佳方式 $(document).ready( function(){ var clicked =
li
为目标,查看是否单击了li
。目前,当我点击li
的文本时,e.target是span,它是li的子元素,所以我好像没有点击li(我猜e.target是非常具体的)。li位于下拉菜单中,因此我使用e.target来获取用户想要的选项。如果用户选择带有class 1 set全局变量的li。如果用户选择类为2的li,则设置一个diff全局变量。什么是针对整个li的最佳方式
$(document).ready( function(){
var clicked = ["subtraction"]
$(".add-section").on("click", function(e){
console.log(e.target)
clicked = []
clicked[0] = "addition"
$("#gameArea").html(clicked[0])
if(!$(".add-section ul").is(":visible")){
$(".add-section ul").css("display" , "block")
}else{
$(".add-section ul").slideUp("fast")
}
if($(e.target).hasClass("one")){
alert("one")
}
})
});
html:
添加
- 添加2项2d
添加3项2d
您正在寻找e.target.parentNode
来代替:
$(e.target).hasClass("one")
使用:
为什么不将click事件添加到span中?当我单击单词“add”时,会出现警报。我认为,因为父节点是div“class=”add section“”
$(e.target).hasClass("one")
$(e.target).closest('li').is('.one')