JQery jstree 大數(shù)據量問題解決方法
更新時間:2010年03月09日 21:05:54 作者:
Jquery 結合jstree 動態(tài)生成一棵樹,如果某一節(jié)點下目錄超過500個,IE 會提示是否允許JS腳本運行,并且目錄加載不全,大約只加載了300左右。
問題解決:生成的樹是逐級加載的,在open函數(shù)中有一個生成節(jié)點的代碼:
代碼
for (var i=0; i<data.length; i++)
{
var n = TREE_OBJ.create(data[i], $(NODE));
if (onaddnode) onaddnode(n);
}
var firstChild = TREE_OBJ.children(NODE)[0];
if ($(firstChild).attr('id')==-1)
TREE_OBJ.remove(firstChild);
問題就出 TREE_OBJ.create函數(shù)上,這個函數(shù)很消耗性能。代碼改成如下:
代碼
var children="";
for (var i=0; i<data.length; i++)
{
children += TREE_OBJ.parseJSON(data[i]);
}
if (children != "")
$(NODE).children('ul').html(children);
var firstChild = TREE_OBJ.children(NODE)[0];
if ($(firstChild).attr('id')==-1)
TREE_OBJ.remove(firstChild);
代碼
復制代碼 代碼如下:
for (var i=0; i<data.length; i++)
{
var n = TREE_OBJ.create(data[i], $(NODE));
if (onaddnode) onaddnode(n);
}
var firstChild = TREE_OBJ.children(NODE)[0];
if ($(firstChild).attr('id')==-1)
TREE_OBJ.remove(firstChild);
問題就出 TREE_OBJ.create函數(shù)上,這個函數(shù)很消耗性能。代碼改成如下:
代碼
復制代碼 代碼如下:
var children="";
for (var i=0; i<data.length; i++)
{
children += TREE_OBJ.parseJSON(data[i]);
}
if (children != "")
$(NODE).children('ul').html(children);
var firstChild = TREE_OBJ.children(NODE)[0];
if ($(firstChild).attr('id')==-1)
TREE_OBJ.remove(firstChild);
相關文章
jQuery dateRangePicker插件使用方法詳解
這篇文章主要為大家詳細介紹了jQuery dateRangePicker插件的使用方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07jQuery實現(xiàn)圖片放大預覽實現(xiàn)原理及代碼
jQuery實現(xiàn)圖片放大原理很簡單,就是將圖片顯示的尺寸變大后放在瀏覽器的一個指定位置,從而實現(xiàn)圖片的放大預覽,下面有個不錯的示例,感興趣的朋友可以參考下2013-09-09