使用dojo.connect()添加事件的注意事項


使用dojo.connect()添加事件處理器是很方便的,不用再考慮跨瀏覽器的問題了。但要想正確地使用這個方法,仍然要注意幾個問題:
        1、用dojo.byId()獲取的是dom元素,而用dijit.byId()獲取的是dojo widget,這兩點是有根本不同的。
        2、事件名稱的大小寫很關鍵,如果對dom元素添加事件處理器,事件名稱要小寫,例如click事件,可以用click或者on

click都行,但一定要把c字母小寫;如果對dojo widget添加事件處理器,事件名稱必須符合dojo的規范,例如click事件,一定要寫成onClick,字母o是小寫,而字母c一定要大寫。
        3、如果要對某個頁面元素添加事件處理器,一定要根據這個元素是dom元素還是dojo widget,分別使用dojo.byId()或dijit.byId()來獲取元素引用。如果亂用,那么結果可能會添加失敗或出現不正常的情況。
        注意以上這幾個問題,正確使用好dojo.connect()方法是沒有問題的。
        例一:
<button id="btn">Click Me!</button>
<script type="text/javascript">
        dojo.connect(dojo.byId('btn'), 'onclick', null, handler);
</script>
        例二:
<button id="btn" dojoType="dijit.form.Button" label="Click Me!"></button>
<script type="text/javascript">
        dojo.connect(dijit.byId('btn'), 'onClick', null, handler);
</script>
-------------------------------------------------------------------------------------------------------
注:本文轉載於:http://blog.163.com/ma13481280654@126/blog/static/732525372011101715346673


免責聲明!

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



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