javascript:播放/暂停不在旋转木马中工作?

时间:2012-10-18 00:54:19

标签: php javascript carousel

我有一个在网站上运行旋转木马的脚本。这是正在完成工作的脚本。我需要在那里添加一个播放/暂停按钮。用户@gskartwii帮我在这里Javascript - How to add a pause button in carousel?添加按钮。我修改了代码以便根据设计进行调整。

问题是暂停工作正常。但是一旦暂停再次点击它就不会恢复播放!我不是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>

1 个答案:

答案 0 :(得分:0)

如果您有按钮,请参考您提出的其他问题:

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

然后播放按钮应

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