版权声明:转载请注明出处链接! https://blog.csdn.net/qq_40259641/article/details/84962114
我的需求是页面内容是新增的,但是要在新增的内容里面点击其中一些内容发生事件,可是在事件中的this指向不对,即
$("div").click("p",function () {
console.log(this) // //这里的this始终指向div
})
此时我需要指向我点击的内容p ,则使用event.target替换this,即
$("div").click("p",function () {
console.log(event.target) // //这里的this指向p
})
使用案例:
$("li").click("input:checkbox[name='subCheckbox']",function () {// 点击动态生成的子按钮
扫描二维码关注公众号,回复: 4488552 查看本文章if ($(event.target).prop("checked")) {// 子按钮选中
$(event.target).parent().parent().parent().addClass('preHide');//准备隐藏类名
} else {// 子按钮取消
$(event.target).parent().parent().parent().removeClass('preHide');//准备隐藏类名
}
});
[推荐使用]其实还有一个事件委托方法更好用,即:
$("li").on("click","input:checkbox[name='subCheckbox']",function () {
console.log($(this))//打印的指向始终是input:checkbox[name='subCheckbox'];
})