我有以下代码:
$(function() {
$(li).click(doThis);
$(a.clickMe).live('click', doThat);
});
我想在单击a.clickMe时阻止doThis。 a.clickMe位于li ...我想查看并查看点击源的来源,以便查看是否点击了.clickMe。
谢谢!
答案 0 :(得分:1)
“我想查看并查看点击来源的来源”
好的,也许是这样的:
$(function() {
$("li").click(function(e) {
if ($(e.target).is("a.clickMe"))
return doThat.call(this, e);
else
return doThis.call(this, e);
});
});
也就是说,在li元素的点击处理程序中测试event.target
element是"a.clickMe"
元素之一,如果是,请调用doThat()
(设置this
并传递event
对象)。否则请致电doThis()
。
答案 1 :(得分:0)
您可以阻止点击事件传播到li
:
$(a.clickMe).live('click', function(e) {
e.stopPropagation();
// Now, the event won't bubble up to the `li` and won't trigger its event handler.
});