Re: [問題] 註冊Click事件的效能問題

看板Ajax作者 (Azure)時間13年前 (2011/04/04 02:07), 編輯推噓6(604)
留言10則, 7人參與, 最新討論串3/3 (看更多)
借這個標題問一個問題 假設有以下兩種情況 情況一(用jQuery綁定事件) <input type="button" class="a" alt="1" /> <input type="button" class="a" alt="2" /> <script type="text/javascript"> $(".a").click(function(){ var obj=$("this"); alert(obj.attr("alt")); }) </script> 情況二(直接在DOM中加入事件) <input type="button" class="a" onclick="fn(1);" /> <input type="button" class="a" onclick="fn(2);" /> <script type="text/javascript"> function fn(tempNumber){ alert(tempNumber); } </script> 這兩種寫法哪一種比較有效率呢? 假如前提是一定會載入jQuery函式庫 版上的前輩們通常會用哪種寫法呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.254.224.137 ※ 編輯: a517981 來自: 111.254.224.137 (04/04 02:08)

04/04 08:51, , 1F
第一種會比較好整理... 而且要拔掉也比較方便
04/04 08:51, 1F

04/04 10:51, , 2F
當然是2阿....問題是除非大量使用,不然要效率幹麻
04/04 10:51, 2F

04/04 14:17, , 3F
考慮維護的方便性 1 考慮撰寫的效率 2
04/04 14:17, 3F

04/04 14:19, , 4F
我會用1. 但是分開綁定。有點用JS強化使用者體驗的感覺
04/04 14:19, 4F

04/05 17:34, , 5F
只用 1
04/05 17:34, 5F

04/05 21:34, , 6F
看你的效率是撰寫的效率還是維護的效率囉 後者的話選1
04/05 21:34, 6F

04/07 00:40, , 7F
效率只差在DOM吧?
04/07 00:40, 7F

04/07 19:49, , 8F
JQ的寫法 還要考慮整個流程的執行 所以會比較慢
04/07 19:49, 8F

04/07 19:49, , 9F
應該用原生的getElementById()比較公平
04/07 19:49, 9F

04/07 19:49, , 10F
阿..要抓class...除了IE6以外 都有原生函數可以用拉..
04/07 19:49, 10F
文章代碼(AID): #1DcBTZx_ (Ajax)
文章代碼(AID): #1DcBTZx_ (Ajax)