blur事件是在元素失去焦点的时候触发,那么失去焦点的前提便是获得焦点。
哪些元素可以获取焦点呢?
1.超链接
2.input button textarea (without disabled)
3.所有带有tabindex属性的未被disabled的元素
例如:
<a href="#" οnblur="showMsg(this);">link</a> <input οnblur="showMsg(this);" type="text" /> <input οnblur="showMsg(this);" type="text" disabled /> <p οnblur="showMsg(this);">first p</p> <p οnblur="showMsg(this);" tabindex="1">second p</p> <script> function showMsg(e){ alert(e.tagName); } </script>
要注意的是 chrome下面 除了文本域的点击事件是不会触发focus和blur的 但是你使用tab键可以触发
jQuery中一样 API是将blur放在了form events下面
一般情况下给html element 加上tabindex是兼容主流浏览器的