我使用以下代码来获取 anchor 链接的 ID:
HTML:
<a id="{{_id}}" class="clearfix" href="#">
<img src="/avatar.png"/>
<div>{{username}}</div>
</a>
JS:
'click a': function(e) {
var currentEditorId = $(e.target).attr('id')
console.log(currentEditorId)
}
它工作正常。当我直接单击 img
和 div
标记( anchor 标记分布在它们上方)时,就会出现问题。
如何才能使 e.target
只捕获 anchor 标记而不捕获内部的 HTML 标记?
最佳答案
您可以使用.closest()找到a
标签
var currentEditorId = $(e.target).closest('a').attr('id')
或者尝试使用 this
引用,因为事件处理程序中的 this
将引用事件所针对的元素
var currentEditorId = this.id
但是看起来您正在使用某种框架,例如backbone
,所以我不知道它是否有效
关于javascript - 如何使 e.target 的 HTML 标签不可点击?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28230491/