![](/img/trans.png)
[英]How to get as e.target the exact element at which onClick is specified?
[英]How to get the whole (parent) element not just the specific child after using e.target
在下面的代码中,我要定位li
以查看是否单击了li
。 当前,当我单击li
的文本时,e.target是span,这是li的子级,因此就好像我没有在li上单击一样(我猜e.target是非常具体的)。 li在一个下拉菜单中,所以我正在使用e.target来获取用户想要的选项。 如果用户选择第1类的li,则设置全局变量。 如果用户选择2类的li,则设置diff全局变量。 定位整个李的最佳方法是什么?
$(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:
<div class="add-section">
<span>add</span>
<ul>
<li class="one"><span class = "left" id = "add2">Add 2 items</span> <span class= "right">2d</span></li>
<li class= "two"><span class = "left" id="add3">Add 3 items</span> <span class= "right">2d</span></li>
</ul>
</div>
您正在寻找e.target.parentNode
代替:
$(e.target).hasClass("one")
采用:
$(e.target).closest('li').is('.one')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.