gdo*_*ica 20 html javascript asp.net-mvc performance jquery
如果我在页面中有不必要id的元素,就像在HTML Helper中ASP.Net-MVC.
它会降低我的id选择器的性能吗?(我有一个巨大的元素页面)
例:
// First DOM
<HTML>
...
<input type="text" value="first" id="useless" />
<input type="text" value="second" id="useful" />
</HTML>
// Second DOM
<HTML>
...
<input type="text" value="first"/>
<input type="text" value="second" id="useful" />
</HTML>
Run Code Online (Sandbox Code Playgroud)
脚本:
<script>
alert($('#useful').val());
// never select the first element (with the useless id)
</script>
Run Code Online (Sandbox Code Playgroud)
Bar*_*man 17
简短的回答,没有.
http://www.stevesouders.com/blog/2009/03/10/performance-impact-of-css-selectors/
几个月前,有一些关于低效CSS选择器的性能影响的帖子.我很感兴趣 - 这是我生活的那种浏览器特质行为.在进一步调查中,我不太确定是否值得花时间让CSS选择器更有效率.我会更进一步地说,如果我们明天醒来并且每个网页的CSS选择器都被神奇地优化,我认为没有人会注意到......
我修改了测试如下:
- 2000个锚点和2000个规则(而不是20,000个) - 这实际上导致~6,000个DOM元素,因为P,DIV,DIV,DIV中的所有嵌套
- 基线页面和标签选择器页面具有2000个规则,就像所有其他页面一样,但这些是与页面中的任何类都不匹配的简单类规则
我在12个浏览器上运行这些测试.页面渲染时间是使用页面顶部和底部的脚本块测量的.(我从本地磁盘加载页面以避免分块编码可能造成的影响.)...
基于这些测试,我有以下假设:对于大多数网站,优化CSS选择器可能带来的性能提升很小,并且不值得花费.有一些类型的CSS规则和与JavaScript的交互可以使页面明显变慢.这是重点应该是...
选择一个id非常快,因为jQuery备份到本机
document.getElementById
Run Code Online (Sandbox Code Playgroud)
功能.但是,如果经常使用它们,可以缓存选择器(将它们保存在变量中).
| 归档时间: |
|
| 查看次数: |
3113 次 |
| 最近记录: |