2011-01-04 14 views
5

क्या यह तकनीक छोटे टेम्पलेट्स के लिए लक्षित है या डेटा के बड़े सेट प्रदर्शित करने के लिए उपयोग की जा सकती है? 1000 पंक्तियों और 20 कॉलम वाली टेबल जैसी?Jquery टेम्पलेट्स प्रदर्शन

इन मामलों के मामलों के प्रदर्शन का प्रदर्शन कैसे करता है? डेटा प्रदर्शित करने का आदर्श और साफ तरीका वेब सेवा से JQuery टेम्पलेट में लौटाए गए JSONified डेटा को फ़ीड करना होगा। यह सिद्धांत में चिकना दिखता है लेकिन क्या यह बड़े डेटा सेट के लिए अभ्यास में उड़ता है?

उत्तर

5

यह प्रतिपादन करता है जो ब्राउज़र पर बहुत निर्भर करता है। आईई 6 काफी धीमा हो सकता है (हालांकि एचटीएमएल मार्कअप की 1,000 बड़ी पंक्तियों को स्थानांतरित करना और दस्तावेज में इंजेक्शन देना या तो तेज़ नहीं होगा)।

यहां a jsperf benchmark that generates 1,000 rows of 10 columns and renders it है। मैं क्रोम 9 में 1,000 पंक्तियों को प्रस्तुत करने के लिए 200-250ms औसत कर रहा हूं।

अधिक महत्वपूर्ण सवाल वास्तव में होना चाहिए: दुनिया में आप एक बार में 1,000 पंक्तियां क्यों प्रदर्शित कर रहे हैं? इसके मुकाबले हमेशा बेहतर यूएक्स विकल्प होते हैं।

+0

मैं लगभग 600 वास्तव में प्रदर्शित करने जा रहा हूं। मुझे विशेष रूप से पेजिंग के बिना सभी पंक्तियों को प्रदर्शित करने के लिए कहा गया था। एसओ पर किसी ने सुझाव दिया कि मैं वेब सेवा से प्राप्त डेटा को कैश करने जैसा कुछ करता हूं और उपयोगकर्ता स्क्रॉल के रूप में इसे भागों में प्रदर्शित करता हूं। मैं jquery के लिए काफी नया हूं और मैंने कई उदाहरण नहीं देखे हैं जो इसे दर्शाते हैं। – sarsnake

+0

आपको उपयोगकर्ता स्क्रॉल के रूप में अपडेट करने की जटिलता की भी आवश्यकता नहीं होगी। बस डेटा के दृश्यमान सेट को पहले प्रस्तुत करें और फिर तुरंत 100% भाग में अपने शेष डेटा को प्रतिपादन और संलग्न करना शुरू करें। इससे भी बेहतर, आप केवल वेब सेवा से पंक्तियों के पहले दिखाई देने वाले सेट का अनुरोध करके शुरू कर सकते हैं, फिर पहले बिट को प्रस्तुत करने के तुरंत बाद बाकी से अनुरोध करें। जब तक कुछ भी दिखाई नहीं दे रहा है तब तक उसे कुल समय तक तेज करना चाहिए। ऐसा करने का मुख्य दोष यह है कि यह स्क्रॉल बार के आकार को लगातार प्रभावित करेगा क्योंकि अधिक पंक्तियों को जोड़ा गया था। –

+0

धन्यवाद डेव, लेकिन मुझे यकीन नहीं है कि यह कैसे काम करेगा, जावास्क्रिप्ट एकल धागा नहीं है? मेरे लिए देरी जेएसओएन डेटा (वेब ​​सेवा से) के माध्यम से लूपिंग पर होती है, वेब सेवा पक्ष नहीं ... तो मैं कई बार वेब सेवा क्यों कहूंगा? क्या आपका रास्ता ब्राउजर लॉक नहीं करेगा? – sarsnake

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