我需要在我的 focusin 函数中找到以前关注的项目。这是一个示例代码:
$('#id').on('focusin', function(event) {
//console.log(event.relatedTarget.nodeName); //doesn't work
}
我已经进行了一些研究,虽然我看到一些人在帖子中说这仅适用于鼠标事件,如 mousedown 等,但我遇到了一些来自知名来源的文章,这些文章让我相信这应该有效。
https://developer.mozilla.org/en-US/docs/DOM/event.relatedTarget Firefox 在这里特别提到了 event.relatedTarget 如何在 'focusin' 事件中返回“哪个 EventTarget 失去焦点”。 Firefox 是我为此使用的浏览器。
http://www.w3.org/TR/DOM-Level-3-Events/#events-FocusEvent在这个书签你可以看到每个 FocusEvent 都有一个只读属性,称为相关目标。
http://www.w3.org/TR/DOM-Level-3-Events/#event-type-focusIn在这里,他们还特别声明“FocusEvent”有一个名为“relatedTarget”的属性,即“事件目标丢失焦点(如果有的话)。”
那么我在这里做错了什么?它一定是某种愚蠢的语法错误或什么的。我找不到 event.relatedTarget 的 nodeName。
更新:我可以让它在 IE 中使用,但这在 Firefox 中不起作用???
$("#id").on('focusin', function(event) {
$('#textbox').text(event.relatedTarget.nodeName);
}