Javascript 单击链接时忽略表格单击功能
当用户点击我的表中的一行时,我有一个click方法Javascript 单击链接时忽略表格单击功能,javascript,jquery,Javascript,Jquery,当用户点击我的表中的一行时,我有一个click方法 $('.table > tbody > tr').click(function () { if ($(this).hasClass("info")) { $(this).removeClass("info"); } else { $(this).addClass("info"); } }); 但是,有些单元格中有链接,如果单击链接,我想忽略上面的方法。如何执行此操作?
$('.table > tbody > tr').click(function () {
if ($(this).hasClass("info")) {
$(this).removeClass("info");
}
else {
$(this).addClass("info");
}
});
但是,有些单元格中有链接,如果单击链接,我想忽略上面的方法。如何执行此操作?只需检查是否使用
event.target
和.closest()单击了链接即可:
只需检查是否使用event.target
和.closest()
单击了链接:
可以阻止单击事件从锚传播
$('.table > tbody > tr a').click(function (e) {
e.stopPropagation()
});
您可以阻止单击事件从锚传播
$('.table > tbody > tr a').click(function (e) {
e.stopPropagation()
});
应该是。是('a')
Closest()
将在DOM中向上遍历,并且结构不是a>tr
@Johan,例如,如果a
中有一个span,那么.is()
将不起作用,因为目标将是span.@a.Wolff EVERYTHING。。。不,这不是问题,但好吧,在阅读您的评论后,OP可能会对隐藏的函数感兴趣!我可以知道投票失败的原因吗?只是好奇,以便我能改进我的答案…应该是。是('a')
Closest()
将在DOM中向上遍历,并且结构不是a>tr
@Johan,例如,如果a
中有一个span,那么.is()
将不起作用,因为目标将是span.@a.Wolff EVERYTHING。。。不,这不是问题,但好吧,在阅读您的评论后,OP可能会对隐藏的函数感兴趣!我可以知道投票失败的原因吗?只是好奇,所以我可以改进我的答案。。。