2012-01-03 14 views
6

साथ मैं क्रियान्वयन से पहले देरी से ट्रिगर विधि का प्रयोग करेंगे, मैं इस तरह का प्रयास करें:उपयोग ट्रिगर विधि देरी

$('#open-contact').delay(3000).trigger('click'); 

लेकिन कोड तुरन्त चलाता है।

क्या आप में से कोई भी मेरी मदद कर सकता है?

आपको बहुत बहुत धन्यवाद

उत्तर

13

jQuery doc says:

.delay() विधि पंक्तिबद्ध jQuery प्रभाव के बीच में देरी के लिए सबसे अच्छा है। क्योंकि यह सीमित है-उदाहरण के लिए, देरी को रद्द करने का कोई तरीका नहीं है- .delay() जावास्क्रिप्ट के मूल सेटटाइमआउट फ़ंक्शन के प्रतिस्थापन नहीं है, जो कुछ उपयोग मामलों के लिए अधिक उपयुक्त हो सकता है।

तो, मैं देरी के बारे में के रूप में

setTimeout(function() { 
    $('#open-contact').trigger('click'); 
}, 3000); 
4

इस पुनर्लेखन हैं jQuerys प्रलेखन से:

.delay() विधि पंक्तिबद्ध jQuery प्रभाव के बीच में देरी के लिए सबसे अच्छा है। क्योंकि यह सीमित है-उदाहरण के लिए, देरी को रद्द करने का कोई तरीका नहीं है- .delay() जावास्क्रिप्ट के मूल सेटटाइमआउट फ़ंक्शन के प्रतिस्थापन नहीं है, जो कुछ उपयोग मामलों के लिए अधिक उपयुक्त हो सकता है।

) दूसरे शब्दों आप setTimeout (का उपयोग करना चाहिए बजाय, यानी में:

setTimeout(function() { $('#open-contact').trigger('click'); }, 3000); 
4

प्रयास करें:

 

$('#open-contact').delay(3000).queue(function() { 
    $(this).trigger('click'); 
}); 

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