2009-10-14 20 views
5

के माध्यम से लोड किया गया पृष्ठ प्रीलोड करें मैं बॉक्सकी या फेसबॉक्स या लाइटबॉक्स जैसे कुछ करने की कोशिश कर रहा हूं ... और इसी तरह। एकमात्र समस्या यह है कि मुझे नहीं पता कि लोड() विधि के माध्यम से बॉक्स में लोड किए गए पृष्ठ को प्रीलोड कैसे करें।jquery लोड लोड() विधि

यह इस तरह काम करना चाहिए:

  1. यह बॉक्स
  2. लोड हो रहा है एनीमेशन जोड़ा जाता है पॉप
  3. जब पेज एनीमेशन लोड गायब हो जाता है

तो मुझे पता करने के लिए जब जरूरत है एनीमेशन को हटाने के लिए पेज लोड किया गया है।

उत्तर

3
var function_for_display_animation = function(){ 
    //display animation 
} 
var function_for_remove_animation = function(){ 
    //remove animation 
} 

function_for_display_animation(); 
$(selector).load('page.php',function_for_remove_animation); 

या:

$().ajaxSend(function(evt, request, settings){ 
    //start animation 
}); 

$().ajaxComplete(function(event,request, settings){ 
    //end animation 
}); 

$(selector).load('page.php', function(){ 
    //work 
}); 
+1

आपके उत्तर के लिए धन्यवाद, इसलिए कॉलबैक फ़ंक्शन कुंजी है – kmunky

1

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

पृष्ठ पर पहली बार लोड होने पर यह चाल बहुत अधिक डाउनलोड नहीं हो रही है। बस लोडिंग संदेश और कुछ जावास्क्रिप्ट।

यह काम आपके $ (दस्तावेज़) .ready() फ़ंक्शन में धीमा डेटा प्राप्त करने के लिए AJAX का उपयोग करेगा। एक बार AJAX क्वेरी लौटने के बाद, डेटा के साथ पृष्ठ को पॉप्युलेट करने के लिए जेएस का उपयोग करें और फिर लोडिंग संदेश बंद करें।

+0

हम्म ... वास्तव में यह है कि मेरे सवाल है, कैसे कर सकते हैं मैं "देख" जब यह लोड हो रहा है एनीमेशन दूर करने के लिए ठीक है? ऐसा कुछ ऐसा है? $ (चयनकर्ता) .load ('page.php', फ़ंक्शन() { $ ('एनीमेशन')। हटाएं(); }); – kmunky

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