Juery在IE6下类选择器和Id选择器的性能

adan-阿丹 2011-11-16 05:52:40
本人今天遇到一问题,本人做一项目,前台都是用jquery写的。原来项目是在新的场地上试用,计算机是双核的cpu,今天把项目签到了旧场地,电脑也是旧的,cpu是单核的。那么问题就来了,在旧场地页面上面当你点击页面上面的某个按钮,此按钮只做前台效果处理,却发现电脑的cpu马上冲倒顶了,页面也就卡死在那里很久。我同事得出个结论其中一条是Juery在IE6下类选择器比Id选择器的性能低得多,我们马上全部把类选择器换成Id选择器。

本人的想法是,类选择器应该比Id选择器差一点,但现基本上大部分jqeury插件全都是用类选择器,也没人反应出性能问题。在百度goole上也没找到答案。小弟在此请教下论坛里面高人,希望有人能解决下小弟的疑惑。
...全文
234 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
liangws 2011-11-17
  • 打赏
  • 举报
回复
楼主查下
querySelectorAll()就知道了。新浏览器支持的原生DOM方法
峭沙 2011-11-17
  • 打赏
  • 举报
回复
用其他浏览器试试会不会卡,都卡的话说明代码有问题,如果只有IE6卡的话,可能是兼容性问题或者确实是IE6性能太差
licip 2011-11-17
  • 打赏
  • 举报
回复
可能是数据量太大了吧。还有就是机子配置是要提升了吧。呵呵。
liangws 2011-11-17
  • 打赏
  • 举报
回复
IE6下面用jQuery复杂选择器与类选择器性能都是很差的
liangws 2011-11-17
  • 打赏
  • 举报
回复
因为现在新版本的浏览器都有一个名为querySelectorAll()的原生DOM方法。可以用来遍历class的。。
jQuery会做判断,如果支持此方法就调用。不支持的话就得遍历所有dom然后再找出class满足的。。
而IE6就不支持这个方法,所以直接用jQuery类选择器效率是很低的
吉普赛的歌 社区高级成员 T9 2011-11-17
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 wen901230zi 的回复:]
类选择器比id选择器性能要快这个我知道,但是一个页面用类选择器就出现cup猛跳的情况我就不解了。如果真的是这样我相信jquery也是不允许出现在这样的情况,各个开发jquery插件、UI的人就不会用类选择器,恰恰相反,现在基本上jquery插件和UI都是用的类选择器。
[/Quote]
怎么说呢, 人家用类选择器, 是因为他那个类, 是他自己定义的, 所以数量并不会太多; 再者不用少用id, 也可能是为了避免与你代码中的id产生冲突.
adan-阿丹 2011-11-16
  • 打赏
  • 举报
回复
类选择器比id选择器性能要快这个我知道,但是一个页面用类选择器就出现cup猛跳的情况我就不解了。如果真的是这样我相信jquery也是不允许出现在这样的情况,各个开发jquery插件、UI的人就不会用类选择器,恰恰相反,现在基本上jquery插件和UI都是用的类选择器。
明悟 2011-11-16
  • 打赏
  • 举报
回复
是不是选择器要厉遍的数据太多了?
吉普赛的歌 社区高级成员 T9 2011-11-16
  • 打赏
  • 举报
回复
不过不用大脑也可知道, id选择器肯定比类选择器快呀.
应该不是ie6的原因, 只是电脑的原因, 旧电脑承受不了太大的计算量而已.
吉普赛的歌 社区高级成员 T9 2011-11-16
  • 打赏
  • 举报
回复
为什么不把客户的电脑安装个ie7, 或者ie8呢?
街头小贩 2011-11-16
  • 打赏
  • 举报
回复
类选择器要经过很多处理过程!你自已写写试试.getElementByID与getElementsByTagName
zell419 2011-11-16
  • 打赏
  • 举报
回复
jquery效果多点 在ie6下 CPU 猛增 。
哎 。
dencey 2011-11-16
  • 打赏
  • 举报
回复
不可能因为类选择器消耗很多性能的,肯定是别的原因
yhtapmys 2011-11-16
  • 打赏
  • 举报
回复

http://blog.csdn.net/spring21st/article/details/6282562
内容概要:本文提出了一种基于加权稀疏矩阵恢复与加速交替方向乘子法(ADMM)的单通道盲解混响算法,并提供了完整的Matlab代码实现。该方法旨在从仅有的单路接收信号中有效分离出原始声源信号,克服传统多通道方法对硬件的依赖。核心技术结合了信号在时频域的稀疏性先验,通过构建加权机制以增强稀疏矩阵恢复的准确性,并引入加速ADMM算法来优化求解过程,显著提升了算法的收敛速度与计算效率。该算法特别适用于麦克风阵列受限或无法部署的复杂声学环境,能够有效抑制混响干扰,从而显著提升语音信号的清晰度与后续语音识别系统的性能。; 适合人群:具备扎实的数字信号处理、凸优化理论及稀疏表示基础,从事音频信号处理、语音增强、盲源分离或相关领域研究与开发工作的研究生、科研人员及工程技术人员。; 使用场景及目标:①解决单麦克风场景下的语音混响去除难题,提升语音通信质量;②应用于智能助听器、车载语音系统、远程视频会议、人机交互等存在严重混响的实际应用场景;③为盲解卷积、稀疏信号恢复等领域的研究提供一种高效的算法实现范例与优化思路。; 阅读建议:建议读者在深入理解信号稀疏性、ADMM优化框架等理论基础上,结合所提供的Matlab代码进行实践,重点分析加权策略的设计原理及其对恢复性能的影响,并通过调整正则化参数、权重因子等关键变量,探究其在不同混响强度和噪声条件下的鲁棒性与泛化能力。

87,989

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧