兼容Firefox和IE的onpropertychange事件oninput
在文本框輸入數據的時候,當鍵盤按下并放開的時候可以使用onkeyup來檢測事件,onpropertychange能夠捕獲每次改變,而onchange需要執行某個事件才可以捕獲 。可是有的時候我們輸入數據是采用粘貼的方式而不是鍵盤輸入 , 這就需要實時檢測文本框狀態的改變 。
onpropertychange不被firefox所支持,如果想在firefox下正常使用,需要用oninput屬性,且需要用addEventListener來注冊事件 。
//當狀態改變的時候執行的函數 function handle() {document.getElementById(’msg’).innerHTML=’輸入的文字長度為:’ document.getElementById(’txt’).value.length; } //firefox下檢測狀態改變只能用oninput,且需要用addEventListener來注冊事件 。if(/msie/i.test(navigator.userAgent))//ie瀏覽器 {document.getElementById(’txt’).onpropertychange=handle } else {//非ie瀏覽器 , 比如Firefox document.getElementById(’txt’).addEventListener("input",handle,false); }
[Ctrl A 全選 注:如需引入外部Js需刷新才能執行]
例子:
復制代碼 代碼如下:
html
body
divoninput測試/div
divid="testdiv"inputid=’tx1’name="tx1"value=""http://div
/body
/html
scriptlanguage="JavaScript"
!--
functiongetOs(){//判斷瀏覽器類型
varOsObject="";
if(navigator.userAgent.indexOf("MSIE")0){
return"MSIE";
}
if(isFirefox=navigator.userAgent.indexOf("Firefox")0){
return"Firefox";
}
if(isSafari=navigator.userAgent.indexOf("Safari")0){
return"Safari";
}
if(isCamino=navigator.userAgent.indexOf("Camino")0){
return"Camino";
}
if(isMozilla=navigator.userAgent.indexOf("Gecko/")0){
return"Gecko";
}
}
if(navigator.userAgent.indexOf("MSIE")0){
document.getElementById(’tx1’).attachEvent("onpropertychange",txChange);
}elseif(navigator.userAgent.indexOf("Firefox")0){
document.getElementById(’tx1’).addEventListener("input",txChange2,false);
}
functiontxChange(){
alert("testie");
}
functiontxChange2(){
alert("testfirefox");
}
/script
以上就是兼容Firefox的onpropertychange事件方法 。您可能感興趣的文章:輸入框的字數時時統計—關于 onpropertychange 和 oninput 使用js監聽輸入框值的即時變化onpropertychange、oninputjavascript開發中使用onpropertychange,oninput事件解決onchange事件的不足asp.net關于onpropertychange和oninput事件實現代碼js propertychange和oninput事件
相關經驗推薦
- 朋友圈掃一掃看看你七夕和誰過怎么玩 掃一掃七夕和誰過套路二維碼
- 用javascript判斷IE版本號簡單實用且向后兼容
- FLASH遮擋DIV浮動層解決方案兼容IE FF Chrome
- IE瀏覽器怎么設置打印背景顏色和圖像?
- IE6/IE7/IE8/Firefox的CSS各種兼容margin問題解決辦法
- onclick IE8的JavaScript點擊事件不兼容的解決方法
- 庫樂隊怎么調和弦 和弦順序設置方法
- 螞蟻借唄和微粒貸哪個好用?螞蟻借唄和微粒貸開通條件是什么?
- 深入淺析JavaScript字符串操作方法 slice、substr、substring及其IE兼容性
- IE6/7下多種方法移除button、input 默認邊框和去掉焦點線
