2013-10-31 64 views
0

我試圖爲圖像製作一個燈箱。我有下一個和上一個按鈕,他們正在工作。現在我試着用我現有的代碼,使幻燈片放映按鍵......這是可能使幻燈片播放和使用我的代碼暫停按鈕...這裏是我的代碼...如何在JavaScript中製作幻燈片放映按鈕?

var current_index = 0 // Our current index and total_images is the array variable containing images path 
    function Next() // Call to go to the next image 
    { 
     // If we're at the last index, go to zero, else go to the next index 
     current_index = (current_index === (total_images.length - 1) ? 0 : current_index + 1); 
     UpdateImage(); // Call update 
    } 

    function Previous() // Call to go to the previous image 
    { 
     // If we're at the first index (0), go to the last, otherwise go to the previous index 
     current_index = (current_index === 0 ? (total_images.length - 1) : current_index - 1); 
     UpdateImage(); // Call update 
    } 

    function UpdateImage() // Call to update the image element 
    { 
     document.getElementById('imgFull').src = total_images[current_index]; // Self explaining 
    }function Play() 
    { 
     var runSlideShow = setInterval(Next, 3000); 
    } 
    function Stop() 
    { 
     window.clearInterval(runSlideShow); 
    } 
+0

http://caroufredsel.dev7studios.com/這是有用的 – MarshalSHI

+0

它沒有用......你有沒有其他的方式..? –

回答

0

可以使用的setInterval和呼叫Next()函數並使用clearInterval來暫停幻燈片。

var runSlideShow = setInterval(Next, 3000); 
clearInterval(runSlideShow); 
+0

runslideshow工程,但當我打電話clearInterval暫停按鈕單擊它不會停止幻燈片 –

+0

你能爲我們提供一個jsfiddle嗎?所以我們可以看到問題在哪裏? –

+0

我已經添加了兩個新的函數playy,並停止在我上面的代碼中,請看看那裏... –

0

使用window.setInterval調用下一個方法。使用這個你可以每5秒就說一次。

var intervalSlide = window.setInterval(Next,5000); 
window.clearInterval(intervalSlide); 

然後,您可以在達到最後時調用clearInterval。

您將需要聲明setInterval在您的函數之外,因此您可以在最後清除它。

+0

intevalSlide工程,但是當我調用window.clearInterval(intervalSlide);暫停按鈕單擊它不會停止幻燈片 –

+0

請確保您的intervalSlide是在上下文中創建的,作爲全局。看到這個鏈接,例如http://www.w3schools.com/js/tryit.asp?filename=tryjs_setinterval –

+0

也只是注意到我錯過了類型化的時間間隔im var聲明。我已經更新了這個例子 –