定义和用法
onblur 事件会在对象失去焦点时发生。
在本例中,我们将在用户离开输入框时执行 JavaScript 代码:
<html>
<head>
<script type="text/javascript">
function upperCase()
{
var x=document.getElementById("fname").value
document.getElementById("fname").value=x.toUpperCase()
}
</script>
</head>
<body>
输入您的姓名:
<input type="text" id="fname" onblur="upperCase()" />
</body>
</html>
object.blur();
这样就可以了. 但不是所有对象都有blur方法的, 具体可以参考DOM手册.
button和 input type="button" 都有 blur 方法.
onblur是在失去焦点的时候起作用,不管文本的值是否有改变
onchange是在失去焦点并且文本的值发生了改变的时候起作用,如果值没有改变则不起作用
onchange是在被改动的对象(如textbox)的值发生改变,并失去焦点的时候触发事件的,只比较对象的初始状态和改变后的状态(失去焦点后的状态)
onBlur
失去焦点时触发
光标离开时触发的方法
例如:
<input type="text" onblur="aaa()">
<script>
function aaa(){
alert("失去焦点啦");
}
</script>
onblur事件只有表单元素具有这个事件!比如说一个输入用户名的登陆框,你把鼠标点上去,光标变一闪一闪的提示你输入信息,这个时候就是得到焦点,就会触发onfocus事件,当你把鼠标点击到输入框外,这个时候就是失去焦点,就会触发onblur事件,一个表单元素的onblur事件是必须在它得到焦点过后才会触发的!也就是说一个从来没得到过焦点的表单元素是不可能会失去焦点的!也就不会触发onblur事件!
说了这么多分都没得!郁闷!
onblur事件是在控件失去焦点就执行一断代码的事件,onchange事件是只要改变值就执行一些代码的事件,否则不执行onchange事件一帮应用于select下拉列表,如果要在text文本框使用该事件 建议使用onPropertyChange事件
onchange虽然是控件值变化出发的事件,但前提是焦点离开该控件,如果焦点仍在控件上而值变化时,是不会触发的,也就是说,在焦点离开控件且值发生变化时,该事件触发onblur只要焦点离开就触发,不管值有没有变化至于两者哪个先执行,倒没有测试过,你可以试一下
div要想有focus和blur事件时用加上一个属性 tabindex
如:
<div tabindex="2"></div>
这样就有onfocus和onblur事件了。
可以的,触发onblur事件后,会按顺序执行方法。我这里测试代码,会依次弹出框1,框2.