手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >使用JS取得焦点(focus)元素代码
使用JS取得焦点(focus)元素代码
摘要:对于良好的用户体验来说,网站/webapp的可访问性和可用性,以及功能都是至关重要的。当我们的网站运行良好/体验很好的时候,用户是意识不到的...

对于良好的用户体验来说,网站/web app的可访问性和可用性,以及功能 都是至关重要的。

当我们的网站运行良好/体验很好的时候,用户是意识不到的,但我们做得不好时他们肯定会感觉到。 应用程序的可用性和可访问性的一个重要组成部分是输入焦点(focus)的处理,但这又是开发人员常常会忽视的一点。

对输入焦点处理很差的一个例子: 在点击一个链接以后打开一个窗口,但却不将光标聚焦到窗口中的任何元素内。 甚至更糟的是: 聚焦到模态窗口中的某个元素,但在关闭以后焦点照样不返回。 理想情况下,在触发链接时会保存一个引用,然后将光标聚焦到新窗口,并在窗口关闭时把光标重新移回去。

但假如你不知道输入光标现在在哪个元素上怎么办? 通过 document.activeElement 属性我们可以取得当前文档中获得焦点的元素!

The JavaScript

使用 document.activeElement 来查找当前选中的元素是很容易的事:

复制代码 代码如下:

var focusedElement = document.activeElement;

/* 比如某个示例:

var triggerElement = document.activeElement;

myModal = new MyModal({

onOpen: function() {

this.container.focus();

},

onClose: function() {

triggerElement.focus();

}

});

*/

这个属性不仅在常规输入元素上可用,包括表单字段或 <a> 标签链接,而且只要设置了 tabIndex 属性的任意元素都是可用的。

我喜欢 document.activeElement 的原因是,不需要使用事件监听或委托监听器来追踪记录下那个元素获得了焦点 —— 您可以随时获取这个属性。 当然在使用这样的特性之前你应该做大量的测试—— 是否在跨浏览器或竞态条件下出什么BUG。 总而言之,我对它很满意,觉得它非常可靠!

【使用JS取得焦点(focus)元素代码】相关文章:

使用JavaScript刷新网页的方法

jquery使用经验小结

网页常用特效代码整理

js实现异步循环实现代码

图片之间的切换

JavaScript实现文本框中默认显示背景图片在获得焦点后消失的方法

js实现div层缓慢收缩与展开的方法

7个有用的jQuery代码片段分享

常用DOM整理

获取阴历(农历)和当前日期的js代码

精品推荐
分类导航