当前位置:  开发笔记 > 编程语言 > 正文

jQuery html()表现得很慢

如何解决《jQueryhtml()表现得很慢》经验,为你挑选了1个好方法。

我正在测试我之前读过的有关随机Math.random()真实性的内容,并希望显示10000个数字,这些数字应该是0到10000000之间的随机数.

为了看测试,我选择将随机数组加入到
每个整数之间的字符串中.然后我就做了$("#"+elm).html(randomNumberString);,这真的很慢.我只想到它是将随机数生成和排序到数组中.但是当我开始在我的代码中放置定时器时,它变得很有吸引力,它的输出正在减慢一切.

就像我做的测试一样 document.getElementById(elm).innerHTML = randomNumberString;

jQuery.html():2500ms getElementById.innerHTML:170ms

我在所有5个浏览器中尝试了这个,并且所有浏览器中的数字非常接近......我在这个实例中使用jQuery错了吗?我也尝试在计时器启动之前追加并获取元素,所以我可以这样做$(elm).html(),但这没有帮助.这似乎是html()减慢一切的实际功能..?

编辑我最终这样做:

randomStringNumber = "
" + randomStringNumber + "
";

现在整个事情运行得更快:jQuery.html():120ms getElementById.innerHTML:80ms

但是,使用oldschool html仍然更快.如果有人能够回答为什么将它包装在一个元素中更快,我会很感激......



1> Haim Evgi..:

25提示改善你的jquery使用

http://www.tvidesign.co.uk/blog/improve-your-jquery-25-excellent-tips.aspx

http://acsenthil.wordpress.com/2011/07/04/improve-your-jquery-25-excellent-tips/

    从Google Code加载框架

    使用备忘单

    合并所有脚本并缩小它们

    使用Firebug卓越的控制台记录功能

    通过缓存将选择操作保持在最低限度

    将DOM操作保持在最低限度

    在进行任何类型的DOM插入时,将所有内容包装在一个元素中

    尽可能使用ID而不是类

    为您的选择器提供上下文

    正确使用链接

    学会正确使用动画

    了解活动授权

    使用类来存储状态

    更好的是,使用jQuery的内部数据()方法来存储状态

    编写自己的选择器

    简化HTML并在页面加载后对其进行修改

    延迟加载内容的速度和SEO的好处

    使用jQuery的实用程序功能

    使用其他框架时,使用noconflict重命名jquery对象

    如何判断图像何时加载

    始终使用最新版本

    如何检查元素是否存在

    将JS类添加到HTML属性中

    返回'false'以防止默认行为

    准备事件的简写


这个答案毫无用处.您没有直接回答问题,您链接的文章现在是404.
第7点似乎是相关的
推荐阅读
我我檬檬我我186
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有