2011-05-06 15 views
6

मेरे पास प्रत्येक पृष्ठ पर टैब हैं जिनमें प्रत्येक अद्वितीय सामग्री है। मैं टैब पर क्लिक किए बिना टैब और सामग्री को स्वचालित रूप से घुमाने के लिए चाहता हूं। जैसे ही पेज लोड होता है, मैं चाहता हूं कि यह फ़ंक्शन window.onload = function() का उपयोग शुरू करें।समय विलंब के साथ सरणी के माध्यम से कदम

मैं निम्नलिखित जावास्क्रिप्ट सरणी है:

var HomeTabs = [1, 3, 5, 7, 9, 11] 

मुझे पता है कि 10 सेकेंड के लिए HomeTab 1 दिखाने के लिए और उसके बाद के लिए कैसे HomeTab 3 पर चला और उसके बाद के बाद 10 सेकेंड इसी क्रम में HomeTab 5 में ले जाएँ, नहीं चाहता यादृच्छिक। जब यह होमटैब 11 पर जाता है तो यह फिर से होमटैब 1 पर वापस जाता है।

मेरे पास ChangeTab(1) टैब बदलने के लिए एक स्क्रिप्ट है, जहां एक टैब की संख्या मैं दिखाना चाहता हूं।

उत्तर

12

एक समारोह प्रति दस सेकंड में कॉल करने के लिए setInterval विधि का उपयोग करें:

window.onload = function(){ 

    var HomeTabs = [1, 3, 5, 7, 9, 11]; 
    var index = 0; 

    function nextTab() { 
    ChangeTab(HomeTabs[index]); 
    index = (index + 1) % HomeTabs.length; 
    } 

    nextTab(); 

    window.setInterval(nextTab, 10000); 

}; 
+0

वाह, यह मापांक ऑपरेटर का उपयोग एक अच्छा चाल है! –

+0

यह पूरी तरह से काम किया .. आपकी सभी प्रतिक्रियाओं के लिए बहुत धन्यवाद .. – neojakey

+0

क्या कोई तरीका है कि मैं रोटेशन को रोक सकता हूं ..? जैसे कोई टैब पर क्लिक करता है .. – neojakey

1

आप हमेशा एक setTimeout एक समारोह में कुछ की तरह

function startRotating(currentIndex) { 

    // do some checking on currentIndex 

    setTimeout(function(){ 
     startRotating(currentIndex + jump) 
    },10000); 
} 

कि अभ्यस्त काम के रूप में लिखा उपयोग कर सकते हैं, लेकिन आप उसे वहाँ से विस्तार कर सकते हैं।

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