2009-08-18 14 views
8

मैं प्रीलोडिंग छवियों का जिक्र नहीं कर रहा हूं, मैं JQuery का उपयोग कर एक HTML पृष्ठ को प्रीलोड करना चाहता हूं।क्या इसे प्रदर्शित करने से पहले एक HTML पृष्ठ को प्रीलोड करना संभव है?

+0

हां, लेकिन यह जानने में मदद मिलेगी कि आप इसे क्यों कर रहे हैं और आप किस प्रभाव को प्राप्त करना चाहते हैं अन्यथा जो संभवतः आपको मिलता है वह उतना सहायक नहीं होगा जितना संभव हो सकता है। –

उत्तर

9

अजाक्स के रूप में आप चाहते हैं तो में सामग्री का उपयोग:।

var myPrefetchedPage; 
$.ajax({ 
    url: "test.html", 
    cache: false, 
    success: function(html){ 
    myPrefetchedPage = html; 
    } 
}) 

myPrefetchedPage अब पूरी सामग्री - जो वर्तमान पृष्ठ में इंजेक्ट किया जा सकता है (पूरी तरह से पेज की जगह यदि आवश्यक

यदि आप जितना संभव हो सके कैशिंग का लाभ उठाने की कोशिश कर रहे हैं तो एक छिपी आईफ्रेम बेहतर काम कर सकता है। फिर आप एकाधिक पृष्ठों को लाने के लिए iframe src चक्र के लिए jQuery का उपयोग कर सकते हैं।

+0

धन्यवाद! मुझे लगता है कि मुझे जो चाहिए वह है, मुझे केवल पृष्ठ से जुड़े जेएस को कैश करने की आवश्यकता होगी, न कि HTML पृष्ठ पर। – HyderA

2

हाँ क्यों है! आप अपनी सामग्री के लिए आईफ्रेम होने, सामग्री को अलग से लाने और फिर फ्रेम भरने जैसी कुछ कर सकते हैं।

4

आप सब कुछ एक div में डाल सकते हैं जो दिखाई नहीं दे रहा है, और दस्तावेज़ तैयार होने के बाद, div को दृश्यमान बनाएं - हालांकि यह वास्तव में "प्री-लोडिंग" नहीं है - यह सबकुछ लोड होने तक कुछ भी प्रदर्शित नहीं कर रहा है ।

0

इसे छिपाने के लिए शरीर पर एक वर्ग सेट करें, फिर इसे ऑनलोड ईवेंट पर जावास्क्रिप्ट का उपयोग करके हटा दें।

(लेकिन तुम क्यों यह एक और सवाल यह है कि क्या करना है। चाहेगा)

0

हां, आप पृष्ठ लोड कर सकते हैं jQuery.get के माध्यम से और उसके बाद displaying से पहले आप इसे (स्ट्रिंग फॉर्म में) के साथ करना चाहते हैं। यदि आप इसे एक छिपे हुए कंटेनर में डालते हैं, तो आप इसे पहले डीओएम के साथ जोड़ सकते हैं।

0

आप इसका उपयोग कर सकते हैं: ब्राउज़र पृष्ठभूमि में एक संपूर्ण पृष्ठ के लिए संपत्तियों को डाउनलोड और प्रस्तुत करेगा। जब उपयोगकर्ता उस "yourpage" लिंक पर क्लिक करता है, तो पृष्ठ लगभग तुरंत प्रदर्शित होगा।

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

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