2013-02-25 15 views
5

लोड करने के लिए 2 सेकंड से अधिक समय लेता है, यह मेरा पहला प्रश्न है, इसलिए उम्मीद है कि मैं पर्याप्त विवरण दूंगा।jQuery, लोडिंग पृष्ठ div केवल तभी प्रदर्शित करें जब पेज

$(document).ready(function() { 
    $('#page_loading').slideDown(500); 
}); 

jQuery(window).load(function() { 
    setTimeout(function() {$('#page_loading').slideUp(500);}, 1500); 
}); 

क्या मैं मैं हासिल करने की कोशिश कर रहा हूँ: जब पूरी तरह से ब्राउज़ कर 4 पृष्ठों, #page_loading div स्लाइड नीचे केवल तभी पेज अधिक से अधिक 2 सेकंड लेता है मैं एक वेबसाइट पर 4 पृष्ठों में निम्नलिखित कोड है लोड करने के लिए। यदि पृष्ठों को लोड करने के लिए 2 सेकंड से कम समय लगता है (पहले देखा गया था और अधिकांश छवियों को कैश किया गया है) तो लोडिंग div दिखाई नहीं देगा।

इस बिंदु पर, भले ही पृष्ठ लोड होने के लिए एक सेकंड से भी कम समय लेता है, लोड लोड अभी भी प्रकट होता है और गायब हो जाता है, और यह बहुत परेशान है।

धन्यवाद, क्रिस्टियन।

+0

स्लाइड को देरी करने के लिए 'सेटटाइमआउट' का उपयोग दो सेकंड तक; दो सेकंड के बाद जांच करें कि क्या आपको अभी भी स्लाइड करना चाहिए। –

+0

जो 1500 मिलीसेकंड के बाद कॉल करेगा – PSR

+0

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

उत्तर

3

क्या यह चाल चल जाएगा?

var showTimeout = setTimeout(function() { 
    $('#page_loading').slideDown(500); 
}, 2000); 

jQuery(window).load(function() { 
    clearTimeout(showTimeout); 
    $('#page_loading').slideUp(500); 
}); 
+0

पूरी तरह से काम किया, धन्यवाद! –

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