top

Posts tagged with onpropertychange

onchange or onpropertychange

在IE下,当一个HTML元素的属性改变的时候,都能通过 onpropertychange来捕获。例如一个<input name="text1" id="text1" />对象的value属性被页面的脚本修改的时候,onchange无法捕获到,而onpropertychange却能够捕获。

也就是说:onpropertychange能及时捕获属性值的变化,而onchange在属性值改变时还必须使得当前元素失去焦点(onblur)才可以激活该事件!如:

请输入图片地址:<input type="text" name="mytext" size="10" value="" onpropertychange="document.images['img'].src=this.value;" /><br /><br />
<img id="myimg" src="/img/common/logo.gif" alt="" />

当text框中的内容被改变时,图片就会立刻被显示出来。而如果用onchange时,改变其值时还需用鼠标单击空白或其他地方使input元素失去焦点(onblur)才能激活该事件,图片显示才会被改变!

今天作一个项目的时候遇到这个问题,试验了onchange、onkeyup、onpropertychange都不太理想,明天再继续看看。

MSDN上关于onpropertychange的解释

 1