繁体   English   中英

jQuery UI .buttonset()太慢了

[英]jQuery UI .buttonset() is too slow

我在HTML页面上有几千个按钮。 运行$(".buttonset").buttonset();需要10秒以上$(".buttonset").buttonset(); 准备好文件。 有没有更快的方法来做到这一点,还是我唯一的解决方案以某种方式限制按钮的数量?

在第一次显示buttonset之前按需创建buttonset

我刚刚测试了2400个分为12个部分的盒子。 它在我的i7上使用Chrome 23,Firefox 17,IE9,Opera 12顺利运行。

这可能会在您第一次打开一个复选框组时添加拆分加载时刻,但它确实会通过在必要时不创建未使用的样式按钮来节省一些RAM。

小提琴

关于buttonset()设置成千上万个按钮所需的速度,你无能为力,但如果10秒钟的问题是浏览器消息说该页面没有响应,你可以将操作分解为异步使用setTimeout调用的操作。

$(".buttonset").buttonset();

会成为:

$(".buttonset").each(function(index, button) {
   setTimeout(function() {
       $(button).buttonset();
   }, 0);
});

我已经成功地使用了这个模式与成千上万的jQuery UI对象,虽然它不会加快操作速度,但它会阻止页面锁定,从而使外观更加快速。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM