真正让HTML标签、DIV、SPAN拥有onfocus和onblur,聚焦和失焦

时间:2023-03-08 17:30:48

转载:http://blog.sina.com.cn/s/blog_7dfe67db01010lnq.html

默认火狐或者其他浏览器里DIV和其他普通标签是不具有onfocus和onblur事件的,经我长久论证因为他们不具有tab属性,所以只要我们创建tab,那么任何标签都可以具有tab属性。

什么标签具有tab呢?显然input和a是得天独厚的具有,我们经常用键盘上的tab键进行移动光标的时候,我们发现光标只在具有tab属性的元素上进行跳转。

我们现在来让div拥有tab并具有onfucus和onblur属性!

给元素创建tab属性:tabindex=参数(这里和z-index类似,计算tab起点)。

<div tabindex="0" hidefocus="true" onfocus='alert("得到焦点");' onblur='alert("失去焦点");' style="border:1px solid #ccc;width:200px;height:200px;outline=0;"></div>

看到这里你了解了吧!

另外,定义tab属性后,元素是默认会加上焦点虚线的,那么在IE中可以通过hidefocus="true"去除!其他浏览器通过outline=0进行去除!