$ .each让IE抓取

时间:2009-06-23 04:05:39

标签: jquery internet-explorer

我正在尝试使用JSON来填充div,所以我基本上运行一个循环来遍历我得到的整个数据,大约200条记录并将其填入div。

它在大多数浏览器中运行良好,但它会爬行到核心IE。这个问题有解决方案吗?

感谢您的时间。

2 个答案:

答案 0 :(得分:4)

您是否一次向div添加每一位数据?每次添加都会使浏览器调用重绘,您可以通过连接并将其全部添加到最后来保存。

function doStuff(json) {
    $.each(json,function(key, val) {
       $('#myEl').append(val); //redraws every time.
    });
}

function doStuffBetter(json) {
    var html = '';
    $.each(json,function(key, val) {
       html += val;
    });
    $('#myEl').append(html); //only 1 redraw
}

答案 1 :(得分:0)

上周我看了a Google Code talk about JavaScript optimization。关于循环的讨论很好,我想我记得$ .each很慢。不确定它会有所帮助,但您可能想观看视频。