我有一些HTML。
<a href="#">
<i class="some-bg" />
Some Text
</a>
还有一些Javascript。
$("a").bind("touchstart", function (e) {
e.preventDefault();
console.log("Tag: " + e.target);
console.log("Tag Name: " + e.target.tagName);
});
回应是。
Tag: [object HTMLElement]
Tag Name: I
为什么呢?不应该是锚吗?
已更新
$("a, a *").bind(function() {
e.stopPropagation();
// other stuff
});
这会起作用吗?
答案 0 :(得分:5)
为什么呢?
因为您触及<i>
(然后事件冒泡到<a>
)。
不应该是锚吗?
没有。如果您想要绑定事件的元素而不是实际触发事件的元素,请使用currentTarget
。