【问题标题】:jQuery performance is too slow (toggle)jQuery 性能太慢(切换)
【发布时间】:2016-11-10 13:49:30
【问题描述】:

我的问题是 jQuery 的切换功能对于我的情况来说太低了。我需要切换超过 2000 行,脚本需要超过 30 秒。

如何提高性能?也许只有 Javascript 而不是 jQuery?

$('#toggleAspMaterials').click(function() {
    $('#catalog body.asp').toggle();
    return false;
});
<input id="toggleAspMaterials" value="Show Asp Materials / hide" class="button" type="button">

【问题讨论】:

  • 老实说,在这种情况下,您最好只在页面上隐藏第二个表格,以反映您想要进行的这些更改,而不是切换所有行,只需切换显示的表格。

标签: javascript jquery performance toggle performance-testing


【解决方案1】:

这是 vanilla 和 jQuery 之间的比较,它基于操作/秒。所以,是的,也许仅仅使用 JavaScript 就可以很好地优化您的案例。

Diagram original source

【讨论】:

    【解决方案2】:

    在 click 函数之外缓存匹配元素的列表。

    这会更快,因为 JQ 搜索所有元素所需的时间将只需要一次,之后将不再有每次点击的搜索开销。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多