【问题标题】:How to make impress.js slideshow auto play and loop如何使 impress.js 幻灯片自动播放和循环
【发布时间】:2012-07-27 18:59:53
【问题描述】:

我有一个幻灯片,我想自动播放并连续循环播放。我发现 sn-ps 可以让我设置全局幻灯片持续时间并使用 impress.next() 和 setInterval() 调用继续前进,但是我失去了为每张幻灯片设置不同持续时间的能力。

【问题讨论】:

    标签: javascript impress.js


    【解决方案1】:

    我很高兴分享我的解决方案。如果您看到改进的空间,请不要害羞。希望这可以帮助那里的人。

    <script>
      var impress = impress();
      impress.init();
    
      document.addEventListener('impress:stepenter', function(e){
        if (typeof timing !== 'undefined') clearInterval(timing);
        var duration = (e.target.getAttribute('data-transition-duration') ? e.target.getAttribute('data-transition-duration') : 2000); // use the set duration or fallback to 2000ms
        timing = setInterval(impress.next, duration);
      });
    </script>
    

    【讨论】:

    • 非常有帮助,节省了大量时间。为此 +1 :)
    • 谢谢!这让我朝着正确的方向前进。但是,我确实遇到了一些问题。在多个步骤上使用自定义数据转换持续时间,在使用较短的持续时间后很难让幻灯片放慢速度。对我来说,将 setInterval(impress.next,duration) 替换为 setTimeout(impress.next, duration) 会导致幻灯片按照我想要的方式运行。
    猜你喜欢
    • 2012-04-10
    • 2015-12-01
    • 1970-01-01
    • 2012-04-07
    • 2021-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多