我正在寻找允许获得焦点的 HTML 元素的最终列表,即在调用它们时哪些元素将成为焦点focus()?
focus()
我正在编写一个 jQuery 扩展,它适用于可以成为焦点的元素。我希望这个问题的答案能让我具体了解我所针对的元素。
没有一个明确的列表,这取决于浏览器。我们拥有的唯一标准是DOM Level 2 HTML,根据该标准,唯一具有方法focus()的元素是 HTMLInputElement、HTMLSelectElement和。这明显省略了和。HTMLTextAreaElement``HTMLAnchorElement``HTMLButtonElement``HTMLAreaElement
HTMLInputElement
HTMLSelectElement
HTMLTextAreaElement``HTMLAnchorElement``HTMLButtonElement``HTMLAreaElement
今天的浏览器focus()在 HTMLElement 上定义,但一个元素实际上不会获得焦点,除非它是以下之一:
disabled
tabindex
根据浏览器的不同,这种行为可能还有其他细微的例外和补充。