如何找出哪个DOM元素具有焦点?
我想在Javascript中找出哪些元素当前有重点。 我一直在浏览DOM,但还没有找到我需要的东西。 有没有办法做到这一点,以及如何?
我一直在寻找的原因是:
我试图使像箭头键和enter
通过输入元素表中导航。 Tab现在可以工作,但输入和箭头似乎并不默认。 我已经设置了关键处理部分,但现在我需要弄清楚如何在事件处理功能中移动焦点。
使用document.activeElement
,它在所有主流浏览器中都受支持。
以前,如果您试图找出表单域的重点,则不能。 要在旧版浏览器中模拟检测,请将“焦点”事件处理程序添加到所有字段,并将最后聚焦的字段记录到变量中。 添加一个“模糊”处理程序,以清除最后聚焦的字段模糊事件时的变量。
相关链接:
正如JW所说,至少以独立于浏览器的方式,您无法找到当前关注的元素。 但是,如果你的应用程序只有IE浏览器(有些是...),你可以通过以下方式找到它:
document.activeElement
编辑:它看起来像IE并没有错,毕竟这是HTML5草案的一部分,似乎最新版本的Chrome,Safari和Firefox至少支持。
如果你可以使用jQuery,它现在支持:focus,只要确保你使用的是1.6+。
本声明将为您提供当前关注的元素。
$(":focus")
From:如何选择一个关注jQuery的元素
链接地址: http://www.djcxy.com/p/14625.html上一篇: How do I find out which DOM element has the focus?
下一篇: How do I check if an element is really visible with JavaScript?