【发布时间】:2014-12-04 17:01:28
【问题描述】:
我很乐意使用 Reveal.js 进行演示,但现在我想使用精美的脚本创建 MOOCS。我想为每个片段添加一个音频片段,当片段显示时开始播放。到目前为止,使用 eventListener 方法在我的幻灯片中启动和暂停音频效果很好。但是,鉴于此方法的性质,当显示下一个片段时,音频或视频将继续播放,因为它取决于“片段显示”或“片段隐藏”的状态。 (见下文)
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)的“当前片段”类来扩展它,当类传递给下一个片段?我敢肯定有,但我是一个新手,非常感谢在这里提醒。如果这将是代码的一部分,那将非常适合moocing。我从我们大学的教学同事那里收到了很多要求。
【问题讨论】:
-
啊。我解决了。只需使用 classList.contains 来触发类“current-fragment”上的音频播放,并使用 else 语句暂停。
-
嗨,你能详细说明一下代码 pelase 吗?也把它写成答案,这样我们就可以投票了。
标签: javascript class event-handling reveal.js