Heim  >  Artikel  >  Web-Frontend  >  兼容Firefox和IE的onpropertychange事件oninput_表单特效

兼容Firefox和IE的onpropertychange事件oninput_表单特效

WBOY
WBOYOriginal
2016-05-16 19:04:001084Durchsuche

在文本框输入数据的时候,当键盘按下并放开的时候可以使用onkeyup来检测事件,onpropertychange能够捕获每次改变,而onchange需要执行某个事件才可以捕获。可是有的时候我们输入数据是采用粘贴的方式而不是键盘输入,这就需要实时检测文本框状态的改变。
onpropertychange 不被firefox所支持,如果想在firefox下正常使用,需要用oninput属性,且需要用addEventListener来注册事件。


[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

例子:
复制代码 代码如下:

 
 
oninput测试
 
 
 
 
<script> <BR> <!-- <BR>function getOs(){//判断浏览器类型 <BR> var OsObject = ""; <BR> if(navigator.userAgent.indexOf("MSIE")>0) { <BR> return "MSIE"; <BR> } <BR> if(isFirefox=navigator.userAgent.indexOf("Firefox")>0){ <BR> return "Firefox"; <BR> } <BR> if(isSafari=navigator.userAgent.indexOf("Safari")>0) { <BR> return "Safari"; <BR> } <BR> if(isCamino=navigator.userAgent.indexOf("Camino")>0){ <BR> return "Camino"; <BR> } <BR> if(isMozilla=navigator.userAgent.indexOf("Gecko/")>0){ <BR> return "Gecko"; <BR> } <br><br>} <br><br>if(navigator.userAgent.indexOf("MSIE")>0){ <BR>document.getElementById('tx1').attachEvent("onpropertychange",txChange); <BR>}else if(navigator.userAgent.indexOf("Firefox")>0){ <BR> document.getElementById('tx1').addEventListener("input",txChange2,false); <BR>} <BR>function txChange(){ <BR> alert("testie"); <BR>} <BR>function txChange2(){ <BR> alert("testfirefox"); <BR>} <BR></script> 

以上就是兼容Firefox的onpropertychange事件方法。
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn