我有一个为搜索引擎创建全选功能的 Google Chrome 扩展程序,但速度很慢(1-14 秒,250-1000 个结果)有没有更快的方法来做到这一点?我的代码如下:
var dropdownvalue = dropdown.options[dropdown.selectedIndex].value;
if ((dropdownvalue == "createFullCheckboxes") || (dropdownvalue == "createNameCheckboxes")) {
var div_embed1 = document.getElementById('results-pane');
if (div_embed1) {
div_embed1.innerHTML = '<form id="checkbox-form">' + div_embed1.innerHTML + '</form>';
}
var i;
var x = document.getElementsByClassName('name');
for (i = 0; i < x.length; i++) {
x[i].innerHTML = '<input id="checkbox" type="checkbox">' + x[i].innerHTML + '';
}
checkedAll();
return;
}
我尝试将 for 循环更改为:for (var i = 0, len = x.length; i < len; i++){
但只有 20 毫秒的差异。CheckedAll()
是一个简单地选择所有复选框的函数。
另一部分(未显示)循环通过选定的复选框并实际上使全选工作在 92 毫秒时快得多,即使对于 1000 个结果它仍然很快。
这是来自 chrome 开发工具的片段:
谢谢你。