2010-04-15 9 views
7

मुझे और अधिक जानकारी div को स्लाइड करने का प्रयास करते समय मुझे समय-समय पर समस्या हो रही है। मेरी वांछित कार्यक्षमता यह है कि पृष्ठ को पहले से ही प्रस्तुत किए जाने के बाद शीर्ष से div स्लाइडडाउन हो सकता है। मेरी समस्या यह है कि अगर मैं $ (दस्तावेज़) .ready() का उपयोग करता हूं .. एनीमेशन स्पष्ट रूप से नहीं होता है।एक बार पृष्ठ लोड हो जाने के बाद jQuery स्लाइडडाउन कैसे करें

$(document).ready(function() { 
     $(".MoreInfo").slideDown('slow'); 
    }); 

अगर मैं उदाहरण के लिए कुछ अन्य तत्व की क्लिक करने के लिए यह स्ट्रैप, यह खूबसूरती से काम करता है:

यहाँ मेरी कोड है। लेकिन मुझे यकीन नहीं है कि पृष्ठ लोड होने के बाद इसे स्पष्ट रूप से कैसे स्लाइड करना है। धन्यवाद!

उत्तर

11

मैं मिश्रण और मिलान उपयोग करने की कोशिश की अनुमति के लिए एक setTimeout फोन पर इस डाल की कोशिश कर सकते:

$(window).load(function() 

और

$(document).ready(function() 

लेकिन किसी भी भाग्य नहीं था। मैं

$(document).ready(function() { 
    $(".MoreInfo").slideUp(1).delay(2000).slideDown('slow'); 

और यह काम करने के लिए प्रतीत होता है। मुझे लगता है कि इसे किसी भी चीज़ से पहले से प्रदर्शित तत्व के साथ करना था।

1

आप का उपयोग

$(document).ready(function() 
तत्वों आप में हेरफेर करने की कोशिश कर रहे से कुछ के रूप में

के बजाय

$(window).load(function() 

पूरी तरह से लोड नहीं किया जा सकता है जब $ (document) .ready आग की कोशिश करना चाहते हो सकता है।

0

शायद शरीर ऑनलोड कोशिश के बजाय

$("body").load(function() { 
    $(".MoreInfo").slideDown('slow'); 
}); 

... document.ready जैसे ही डोम हेरफेर किया जा सकता होता है, नहीं जरूरी एक बार पृष्ठ प्रदर्शित होता है - यह अच्छी तरह से हो सकता है इससे पहले कि पेज है का प्रदर्शन किया। तुम भी एक छोटे से अतिरिक्त समय

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