2007年03月3日
事件處理程式與物件的順序對FireFox很重要
在IE裡,從來也不用去管表單控制項(<INPUT...>)與事件程式(<script for=...
event=...>)的先後位置,<script-for-event>只做類似宣告的動作,在讀取網頁內容時不會去檢查
INPUT 產生與否,被觸發時才會執行。但此二者的前後位置對於FireFox而言卻是非常重要。
以下皆為FireFox的特性:
1.先寫事件會產生錯誤;事件處理程式寫在控制項後面才是正確的:
2.最保險的寫法是把事件處理程式寫在window.onload的程式裡:
能這樣寫的原因是:window.onload必定在網頁全部都讀取完畢後才會被執行。
2007/03/04修訂:為免混淆,將「物件」改成表單控制項或控制項。
##
以下皆為FireFox的特性:
1.先寫事件會產生錯誤;事件處理程式寫在控制項後面才是正確的:
| <script> document.getElementById('btnOK').onclick = function() { // has no properties錯誤 alert("btnOK pressed!"); }; </script> .... <input id='btnOK' value='OK'> |
2.最保險的寫法是把事件處理程式寫在window.onload的程式裡:
| <script> window.onload = function() { document.getElementById('btnOK').onclick = function() { alert("btnOK pressed!"); }; }; </script> .... <input id='btnOK' value='OK'> // 控制項的位置無關緊要了 |
能這樣寫的原因是:window.onload必定在網頁全部都讀取完畢後才會被執行。
2007/03/04修訂:為免混淆,將「物件」改成表單控制項或控制項。
##
引用URL
http://cgi.blog.roodo.com/trackback/2795121
