作者DRLai (苏打)
看板Ajax
标题[问题] jQuery each --> Native Loop
时间Tue Jul 31 22:15:25 2012
最近在撰写一个网页
由於网页中会动态产生大量表格资料
导致网页会慢一些
翻了一下网路上关於 jQuery performance 的文章
看到把.each改用 javascript native loop 会快很多
尝试修改却改不出来
希望各位高手协助一下
简单的程式码如下
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
</head>
<body>
<div id="test">
<div id="a1"></div>
<div id="a2"></div>
</div>
<div id="debug"></div>
<script>
$(document).ready(function(){
$("#test").children("div").each(function(){
$("#debug").append("I got "+$(this).attr("id")+"<br/>");
});
});
</script>
</body>
</html>
程式会取得 DIV#test 接着把他底下的 DIV id列印出来
想把 $("#test").children("div").each 换掉改用for
这样有办法吗?
感谢m(_ _)m
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.235.199.15
1F:推 nenpow:动态产生表格会慢通常是因为做太多次DOM操作吧,像这例子 07/31 22:56
2F:→ nenpow:与其取代$.each不如把要append的东西接成大字串一次append 07/31 22:57
3F:→ nenpow:改进得多 07/31 22:57
4F:→ nenpow:和原问题无关$(this).attr("id")直接写this.id就好了? 07/31 22:58
5F:→ DRLai:append那个部份我原本就有做了,只是范例懒得改^^" 08/01 00:44