我有这个代码,它操纵asp.net treeview html代码。提高jquery选择速度
此代码运行频繁,所以它的重要性在于尽可能快地运行。
我想了解更多关于jquery选择器并提高速度的信息。到目前为止,我能够自己获得这些代码。
我不确定的一些事情是如果你想要第三个子元素,我使用[2]
或.eq(2)
或:nth-child(2)
?另外如果我使用$
来选择来自所选东西的东西,这是必要的,还是已经被选中?
有谁知道任何技巧或提示,我可以做,以提高我的jQuery选择效率?
谢谢。
function showResultsOnTreeview(treeviewID, filenameDictionary) {
var sectionNodes = $("#" + treeviewID + " > table");
var numOfSections = sectionNodes.length;
var i, j, sectionName, divContainer, itemNodes, numOfItems, itemName, itemTag, itemPath;
for (i = 0; i < numOfSections; i += 1) {
sectionName = $(sectionNodes[i]).text();
divContainer = $(sectionNodes[i]).next('div');
divContainer.hide();
itemNodes = $('table', divContainer);
numOfItems = itemNodes.length;
for (j = 0; j < numOfItems; j += 1) {
itemTag = $('td', $(itemNodes[j])).eq(2);
itemTag.removeClass('treeViewResult');
itemName = getNameFromItem($(itemNodes[j]).text());
itemPath = filenameDictionary[itemName];
if (itemPath != null) {
if (itemPath.indexOf(sectionName + "/" + itemName) != -1) {
itemTag.addClass('treeViewResult');
divContainer.show();
}
}
}
}
}
http://jsperf.com/ – epascarello
@epascarello:我甚至不知道如何使用它,因为这是来自Microsoft专用Microsoft SharePoint环境中的asp.net解决方案。 – omega
确保缓存对象尽可能多,如'var sect = $(sectionNodes [i]);' – mplungjan