[英]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.