在Reveal.js中停止片段上的音频

时间:2014-12-04 17:01:28

标签: javascript class event-handling reveal.js

我很高兴使用Reveal.js进行演示,但现在我想用精美的脚本创建MOOCS。我想为每个片段放一个音频片段,在片段显示时开始播放。到目前为止,使用eventListener方法可以在我的幻灯片中启动和暂停音频。但是,鉴于此方法的性质,音频或视频将在显示下一个片段时继续,因为它取决于“fragmentshown”或“fragmenthidden”的状态。 (见下文)

Reveal.addEventListener( 'fragmentshown', function( event ) {
    var audio = event.fragment.querySelector( 'audio' );
    if( audio ) {
    audio.play();
    }});
Reveal.addEventListener( 'fragmenthidden', function( event ) {
    var audio = event.fragment.querySelector( 'audio' );
    if( audio ) {
    audio.pause();
    }});

是否有一种简单的方法可以使用添加到当前片段(duh)的'current-fragment'类来扩展它,以便在将类传递给音频时暂停(或更好地:停止)音频下一个片段?我确定有,但我是新手,非常感谢这里的人。如果这将成为代码的一部分,那么对于moocing目的来说会很棒。我从大学的同事那里得到了很多要求。

1 个答案:

答案 0 :(得分:0)

要生成MOOC,您可以使用为您完成工作的audio-slideshow插件。该插件允许您为每个幻灯片和片段指定音频文件。或者,它根据reveal.js索引自动检查幻灯片和片段是否有音频文件,例如:对于第二个水平和第一个垂直幻灯片ist检查是否有文件audio/1.0.ogg

您还可以在使用slideshow-recorder插件进行演示时录制音频,或使用文字转语音。

您可以找到演示here和插件here

Asvin