DOM 元素中的焦点管理

DOM 元素中的焦点管理

1. 焦点元素

表单元素(inputselect 或者 textarea 等)

以及 document.body

2. 如何查看当前焦点元素

document.activeElement:返回当前页面中获得焦点的元素,也就是说,如果此时用户按下了键盘上某个键,会在该元素上触发键盘事件。该属性是只读的。

Chrome 页面加载后默认的焦点元素是 document.body

https://developer.mozilla.org...

3. 如何让元素获得焦点

1)页面交互:点击 input 输入框等。

2)JS代码:HTMLElement.focus() 方法可以设置指定元素获取焦点。

3)使用 HTML5 定义的新属性 autofocus,可以让元素自动获得焦点。

例如 <input type="text" autofocus />

这样 input 会在页面载入后会自动获得焦点。

注意:普通 DOM 元素,想要获得焦点,需要先设置 tabindex="-1" 属性,再通过页面交互或者 focus 方式,让其获得焦点。

4. 如何让元素失去焦点

1)页面交互:点击页面其他地方

2)JS代码:HTMLElement.blur() blur方法用来移除当前元素所获得的键盘焦点。

5. tabindex 属性

tabindex 属性的作用是:当用 tab 键遍历切换页面的表单元素时,按照 tabindex 的大小决定顺序。

当普通 DOM 元素设置属性 tabindex="-1" 时,可将其成为焦点元素。

更多 tableindex 相关:http://www.cnblogs.com/rubylo...


更多博客:https://github.com/Lmagic16/blog

相关推荐