2012-11-22 12 views
6

के साथ बहुत लंबा प्रतिपादन मैं AJAX द्वारा डेटा लोड करने के विकल्प के साथ जेएसटी (1.0-आरसी 3) का उपयोग कर रहा हूं और मुझे इसके बारे में ~ 2000 बच्चों के नोड को लोड करने में समस्या है। जबकि सर्वर कई सेकंड के भीतर प्रतिक्रिया देता है, यह ब्राउज़र (क्रोम, एफएफ) में परिणामों को प्रस्तुत करने के लिए केवल ~ 40 सेकंड के बारे में jsTree लेता है। इसके अलावा, एफएफ 'jquery-1.7.2.min.js' से कोई प्रतिक्रिया के बारे में जानकारी देता है। डेटा की एक ही राशि आईई को फ्रीज करती है। क्या यह डेटा के साथ अधिभारित है? या यह किसी तरह की बग है? क्या कोई परिवर्तनीय कारक हैं, जो मुझे तेजी से प्रतिपादन में मदद कर सकते हैं?जेएसटी - प्रतिपादन अनुकूलन | 2000 नोड्स

jQuery("#dependency-tree").jstree(
     { 
      'plugins':['themes', 'json_data', 'ui', 'core', 'types', 'sort'], 
      "json_data":{ 
       "progressive_render": true, 
       "data":initData, 
       cache:false, 
       "ajax":{ 
        "url":function (node) 
        { 
         return appContext + 'GetUnitsNode/' 
          + node.attr('id'); 
        }, 
        dataType:"text", 
        "success":function (data) 
        { 
         if (data == "none") 
         { 
          return false; 
         } 
         return jQuery.parseJSON(data); 
        } 
       } 
      }, 
      "ui":{ 
       'select_limit':1 
      }, 
      "core":{ 
       'animation':0, 
       'html_titles':true 
      }, 
      "themes":{ 
       "theme":"rules", 
       "dots":true, 
       "icons":true 
      }, 
      "types":{ 
       "types":{ 
        "default":{ 
         "icon":{ 
          "image":appContext + "/img/orange.png" 
         } 
        } 
       } 
      }, 
      "sort":function (a, b) 
      { 
       return this.get_text(a).toUpperCase() > this.get_text(b).toUpperCase() ? 1 : -1; 
      } 
     }).bind("select_node.jstree", function (event, data) 
     { 
      submitedNodeId = data.rslt.obj.attr('id'); 
      submitedNodeTypeId = data.rslt.obj.attr("typeId"); 
      submitedNodeLast = data.inst.is_leaf(data.rslt.obj); 
      g_node_text = jQuery(data.rslt.obj).children().eq(1).html(); 
     }); 
+0

निश्चित रूप से jstree अगर सुस्त के डेमो, यहां तक ​​कि 3/4 नोड्स के साथ ... मैं कर सकते हैं ' 2K के साथ अपने अनुभव की कल्पना नहीं करें ... एचटीएमएल 5 में बीटीडब्ल्यू ऐसा करना संभव होना चाहिए। शायद अंतिम श्रेणी स्विच के रूप में सरल वर्ग स्विच (folded/unfolded) और डोम हेरफेर के साथ – CapelliC

उत्तर

2

क्या आपने कोशिश की है?

  • progressive_render

    progressive_render एक बूलियन। डिफ़ॉल्ट गलत है। यदि यह विकल्प सत्य पर सेट किया गया है तो लौटाए गए JSON के दृश्यमान (खुले नोड्स) भागों को डोम नोड्स में परिवर्तित कर दिया जाता है, किसी भी छिपे हुए हिस्सों को बचाया जाता है और ऑनडेंड (जब कोई नोड दिखाई देता है) को पार्स किया जाता है। आप एक बड़े नेस्टेड पेड़ जो एक भारी डोम में परिणाम होगा जब यह उपयोगी है

  • AJAX लोड हो रहा है

संबंधित मुद्दे