2010-11-13 6 views
17

अधिकांश लोगों को सलाह देते हैं स्क्रिप्ट टैग प्रदर्शन कारणों से पृष्ठ के तल पर रखा जाना - jQuery: Move JavaScript to the bottom of the page?सर्वश्रेष्ठ प्रदर्शन के लिए एक jQuery मोबाइल पेज में स्क्रिप्ट कहाँ स्थित होनी चाहिए?

कैसे इस अभ्यास jQuery मोबाइल वेब पृष्ठों के लिए लागू होता है?

उदाहरण मैंने सिर टैग में jQuery और jQuery मोबाइल स्क्रिप्ट को देखा है। क्या अन्य स्क्रिप्ट को हेड टैग में भी रखा जाना चाहिए? सबसे अच्छा अभ्यास क्या है?

+1

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

+0

@ जेम्स न्यूटन-किंग, अंत में आप कैसे करते हैं? मैं हमेशा जेएस को नीचे रखता हूं, लेकिन आज मुझे लगता है कि इसे नीचे रखना है, लोडिंग आइकन प्रदर्शित नहीं होता है। (पहला डिस्प्ले बहुत बदसूरत है, और JQuery मोबाइल स्टाइल में बदल गया है)। मुझे नहीं पता कि जेएस स्थान की समस्या है, क्या आप मुझे अंत में पसंद कर सकते हैं? धन्यवाद – qakmak

उत्तर

4

यहां, मुझे लगता है कि वही उत्तर डेस्कटॉप पृष्ठों के लिए गिना जाता है। यदि पेज कार्यक्षमता के लिए जावास्क्रिप्ट महत्वपूर्ण है तो आप इसे शीर्ष पर डाल दें। यदि यह पूरक है, तो आप इसे नीचे रखें।

2

सर्वश्रेष्ठ अभ्यास नीचे है। आम तौर पर जब डीओएम लोड होता है तो डीक्व्यू लोड होने पर jquery स्क्रिप्ट निष्पादित की जाती है, इसलिए पेज पर होने पर इसका कोई प्रभाव नहीं पड़ता है, लेकिन इसका गति पर असर पड़ता है, क्योंकि यह अन्य तत्वों को पहले लोड करने की अनुमति देगा।

+1

यह आगामी एचटीएमएल 5 मानक की तुलना में कैसे करता है? – mpapis

+0

मैं 100% निश्चित नहीं हूं लेकिन मुझे लगता है कि एचटीएमएल 5 के लिए इस बदलाव में से कोई भी नहीं –

3

हालांकि यह गति के रूप में प्रदर्शन से संबंधित नहीं हो सकता है, यह jquery मोबाइल संदर्भ में महत्वपूर्ण है कि आप पृष्ठों पर स्क्रिप्ट को सही ढंग से जोड़ते हैं। सादा पुराना $(function(){}) आपको आश्चर्यचकित करेगा। यह कुछ मामलों में काम नहीं करता है।

जब कोई लिंक क्लिक किया जाता है तो jquery मोबाइल पेज को AJAX के साथ लाता है और <head> में आपके द्वारा डाली गई सभी चीज़ों को अनदेखा कर वर्तमान में खुले पृष्ठ पर अपनी सामग्री जोड़ता है। [यह jqm 1.0a2 के रूप में सच है]

वहाँ जोड़ने लिपियों के दो तरीके है कि काम करेंगे कर रहे हैं:

  1. एक भी .js फ़ाइल की सभी स्क्रिप्ट डालने और उन सभी पृष्ठों के सिर में लिंक आपका ऐप और उन घटनाओं के साथ काम करें जो jqm प्रदान करता है (पेजशो और पेजक्रेट वाले)।
  2. शरीर के नीचे स्क्रिप्ट डालने और डोमरेडी को आग की आवश्यकता नहीं है।

दूसरा तरीका बड़े अनुप्रयोगों में प्रदर्शन के लिए बेहतर हो सकता है, जहां ऐसी कई स्क्रिप्ट हैं जो उपयोगकर्ता उपयोग नहीं कर सकते हैं (कुछ पृष्ठों पर नहीं जा रहे हैं)। मैं पहली बार अनुशंसा करता हूं - यह क्लीनर है और jqm इसे प्रोत्साहित करता है।

दोनों का एक संकर सबसे अच्छा हो सकता है - एक पृष्ठ शो ईवेंट हैंडलर जोड़ना प्रत्येक लोड किए गए पृष्ठ से कुछ डिफ़ॉल्ट फ़ंक्शन ट्रिगर करेगा।

[संपादित करें]

देख सीमाएं here पृष्ठ के तल पर।

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