【问题标题】:Speed up ":not" jQuery CSS selector in IE 8?在 IE 8 中加速 ":not" jQuery CSS 选择器?
【发布时间】:2012-04-14 14:25:54
【问题描述】:

我在 IE 中遇到性能问题,我正在做一个有这个选择器的大循环:

td:not(.some-cell)

在 IE 中有没有更有效的方法来做到这一点?

【问题讨论】:

    标签: javascript jquery performance internet-explorer jquery-selectors


    【解决方案1】:

    IE8 本身不支持:not 选择器,因此如果您使用的是纯脚本选择器引擎,例如 jQuery 内置的 Sizzle,由于纯脚本搜索所有元素的速度很慢,可能会导致性能问题。

    最简单的解决方案是在服务器端用特定的类标记每个 TD 元素,然后仅使用类选择器选择它们。

    <td class="not-some-cell"></td>
    
    <script>
        // instead of $('TD:not(.some-cell)')
        var myCell = $('TD.not-some-cell');
    </script>
    

    【讨论】:

    • 我不确定你是否知道这一点,但 :not() 是一个内置的 CSS 选择器。我只是告诉你。我只是不确定你是否知道。
    • IE 9 以前不支持。
    • 你的意思是IE小于9?
    • IE8 早于 IE9。这是既定的术语。
    猜你喜欢
    • 2012-04-13
    • 2010-09-16
    • 2016-09-05
    • 2015-10-30
    • 2011-05-04
    • 2011-06-15
    • 2011-11-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多