作者a517981 (Azure)
看板Ajax
标题Re: [问题] 注册Click事件的效能问题
时间Mon Apr 4 02:07:26 2011
借这个标题问一个问题
假设有以下两种情况
情况一(用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)
1F:推 s25g5d4:第一种会比较好整理... 而且要拔掉也比较方便 04/04 08:51
2F:推 ShieChang:当然是2阿....问题是除非大量使用,不然要效率干麻 04/04 10:51
3F:推 s0300453:考虑维护的方便性 1 考虑撰写的效率 2 04/04 14:17
4F:推 scribeTW:我会用1. 但是分开绑定。有点用JS强化使用者体验的感觉 04/04 14:19
5F:→ grence:只用 1 04/05 17:34
6F:→ okis0531:看你的效率是撰写的效率还是维护的效率罗 後者的话选1 04/05 21:34
7F:推 wa120:效率只差在DOM吧? 04/07 00:40
8F:推 s25g5d4:JQ的写法 还要考虑整个流程的执行 所以会比较慢 04/07 19:49
9F:→ s25g5d4:应该用原生的getElementById()比较公平 04/07 19:49
10F:→ s25g5d4:阿..要抓class...除了IE6以外 都有原生函数可以用拉.. 04/07 19:49