2009-12-15 14 views
12

मुझे AJAX कॉलjquery का उपयोग कर 5 सेकंड के बाद div टेक्स्ट गायब हो जाता है?

का उपयोग करके इसे प्रदर्शित करने के x सेकंड के बाद एक div टेक्स्ट गायब होने की आवश्यकता है, कृपया आप इस पर मेरी सहायता कर सकते हैं?

धन्यवाद

उत्तर

28

आप एक <div> सामग्री को हटाने के लिए उपयोग कर सकते हैं empty()

उत्तरार्द्ध कभी कभी पसंद किया जाता है क्योंकि यह ग्लोबल नेम स्पेस कम प्रदूषित करता

var fade_out = function() { 
    $("#mydiv").fadeOut().empty(); 
} 

setTimeout(fade_out, 5000); 

:

<div id="mydiv"> 
    ... 
</div> 

है यदि आप चाहें एक गुमनाम समारोह के साथ ऐसा कर सकते हैं:

setTimeout(function() { 
    $("#mydiv").fadeOut().empty(); 
}, 5000); 

या यहाँ तक कि।

+0

ठीक काम कर रहा है, लेकिन मैं याद नहीं आ रहा है कि फिर से div .. मैं div सामग्री पाठ को हटाने की जरूरत है, जबकि नए प्रयोग के लिए div ही रखने ... धन्यवाद –

+1

तो खाली करने के लिए कॉल() हटाएं और बस करो fadeOut() –

+0

सही .. बहुत धन्यवाद –

1

आप setTimeout की तरह कुछ स्थापित करने के लिए की आवश्यकता होगी ('$ ("# आईडी")। FadeOut ("धीमी")', 5000), लेकिन से है कि यह क्या अपने कोड के बाकी पर निर्भर करता है अन्य यह मानते हुए कि

setTimeout(fade_out, 5000); 

function fade_out() { 
    $("#mydiv").fadeOut().empty(); 
} 

: ऐसा लगता है कि

1

यह काम करना चाहिए:

$(document).ready(function() { 
    $.doTimeout(5000, function() { 
     $('#mydiv').fadeOut(); 
    }); 
}); 
+0

$ .doTimeout के साथ क्या सौदा है? क्या यह एक प्लगइन, या कोर का हिस्सा है? – ScottE

+0

http://benalman.com/projects/jquery-dotimeout-plugin/ देखें, इस मामले में मैं सिर्फ window.setTimeout विचार का उपयोग करता हूं, वास्तव में इस सरल चीज़ के लिए प्लगइन की लागत के लायक नहीं –

3

आप इस मामले मैं प्रयोग किया जाता में, .delay()

$(".formSentMsg").delay(3200).fadeOut(300); 

कॉल div मिलीसेकेंड में सेट देरी समय कोशिश करते हैं और संपत्ति आप बदलना चाहते हैं निर्धारित कर सकते हैं .fadeOut() ताकि यह एनिमेटेड हो सके, लेकिन आप .hide() का भी उपयोग कर सकते हैं।

http://api.jquery.com/delay/

0

आप के बाद यह गायब हो गया है div पाठ फिर से प्रदर्शित करने के लिए आवश्यकता हो सकती है। यह 1 लाइन में किया जा सकता है।

$('#div_id').empty().show().html(message).delay(3000).fadeOut(300); 
संबंधित मुद्दे