有關onpropertychange事件


<div style="border:1px solid #fc0;height:24px;width:300px;" id="target"></div><br />

    <input name="filltext" oninput="document.getElementById('target').innerHTML=this.value"  id="filltext" type="text" />

 

onpropertychange事件,顧名思義,就是property(屬性)change(改變)的時候,觸發事件。這是IE專有的!如果想兼容其它瀏覽器,有個類似的事件,oninput!

可能大家會想到另外一個事件:onchange。

但是,onchange有兩個弊端,一、就是它在觸發對象失去焦點時,才觸發onchange事件。二、如果得用javascript改變觸發對象的屬性時,並不能觸發onchange事件,oninput也有這個問題。

onpropertychange會在設置disable=true的時候失效。而且,onpropertychange是在觸發對象改變任何屬性時都會觸發。而oninput只是在改變input的value值時才觸發。

oninput 事件:不但JS 改變 value 值時不能觸發,有從瀏覽器的自動下拉提示中選值時,也不會觸發。

onpropertychange觸發函數只有一個默認參數,是所以可以觸發屬性的集合

<script type="text/javascript">
        document.getElementById('filltext').attachEvent('onpropertychange',function(){    
                   console.log(arguments.length);    
                   for(var i=0;i<arguments.length;i++)
                  {    
                    console.log(arguments[i]);    
                }    
            }); 
    </script>

看執行結果:

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM