【发布时间】:2009-12-22 18:25:36
【问题描述】:
我正在运行以下代码来跟踪在 HTML 文档中获得焦点的每个控件的 tagName:
$(function() {
$("*").bind("focus", function() {
console.log("tabbed " + this.tagName);
});
});
当它运行时,我可以观察萤火虫控制台并看到它跟踪标签,如“A”和“INPUT”,我希望在我浏览文档时获得焦点。然而,它也追踪一个“UL”标签。文档有多个 UL 标签,似乎只有这一个 UL 标签成为焦点。
有什么想法会发生这种情况吗?具有焦点的 UL 标记没有属性(名称、id 等),所以我不知道它会如何被其他脚本修改。
(在Firefox中运行。我正在查看的页面很大,所以我不包括源代码,但是UL标签没有属性,包含一些LI,其中一个LI确实包含一个标签)。
根据Which HTML elements can receive focus?,可能是因为某些脚本在该 UL 标记上设置了 tabindex。我找不到任何这样的脚本。
请注意,我并不是要弄清楚如何使 UL 可聚焦,而是要弄清楚它为什么可聚焦。
【问题讨论】:
标签: javascript html focus