2012-10-18 41 views
0

我有一個腳本在網站上運行一個傳送帶。這是做這項工作的腳本。我需要在那裏添加一個播放/暫停按鈕。 User @gskartwii幫助我在這裏Javascript - How to add a pause button in carousel?添加按鈕。我修改了代碼以適應設計。javascript:播放/暫停在傳送帶中不起作用?

問題是暫停工作正常。但一旦暫停,再次點擊它不會恢復播放!我不是Javascript的專家,所以不知道我需要什麼來應付。 :/

有人可以幫我這個。

這是腳本:

<?php 
$speed = 500;//miliseconds 
?> 


<script type="text/javascript"> 
var paused=false; 
var timeoutID; 

homeTileCount = 1; 
$$('.home-tile-container img').each(function(e){ 
    $(e).writeAttribute('id','home-tile-' + homeTileCount); 
    $(e).addClassName('home-tile'); 
    homeTileCount++; 
}); 

homeTileCount--; 

var homeTileRemote = $$('.home-tile-remote')[0]; 

//play/pause button start 
homeTileRemote.insert('<div id="home-title-remote-10" class="overflow"><a href="#" onclick="if(!paused){paused=true} else{paused=false}">| |</a></div>'); 
//play/pause button end 

for (i=homeTileCount;i>=1;i--){ 
    homeTileRemote.insert('<div id="home-tile-remote-'+i+'" class="overflow"><a href="#" onclick="switchTile('+i+');return false">'+i+'</a></div>'); 
} 

function switchTile(n) 
{ 
    if(!paused){ 
    //console.log(n); 
    clearTimeout(timeoutID); 
    $$('.home-tile-container img').each(function(e){ 
     e.removeClassName('home-tile-active'); 
    }); 

    $$('.home-tile-remote > div').each(function(e){ 
     e.removeClassName('home-tile-remote-active'); 
    }); 

    $('home-tile-remote-'+n).addClassName('home-tile-remote-active'); 
    $('home-tile-'+n).addClassName('home-tile-active'); 
    next = n+1; 
    if (next > homeTileCount) 
     next = 1; 
    timeoutID = setTimeout('switchTile('+next+')', <?=$speed?>);} 
} 

switchTile(1); 
setTimeout('switchTile(2)', <?=$speed?>); 
</script> 

回答

0

從你問,其他的問題引用如果你有一個按鈕:

<button type="button" onclick="paused=true;">Pause</button>

然後播放按鈕應

<button type="button" onclick="paused=false;">Play</button>