我正在使用timesheets.js
制作SMIL演示文稿。
在JavaScript控制台中,我看到了:
<div id="slide3" class="transition" smil="active">
<video id="foo" source type="video/mp4" src="foo.mp4">
</div>
参数:smil="active"
可以是active
或done
。
我想在foo.mp4
smil="active"
我添加了这个:
<script>
$(document).ready(function () {
$('#foo').prop('autoplay', true);
});
</script>
但它会在加载页面时播放视频,因此当smil="active"
视频结束时。
我该如何解决这个问题?
修改
这是触发state =“active”的js:
var state = "";
this.isActive = function() { return (state == "active"); };
this.show = function() {
if (state == "active") return;
state = "active";
if (0) try {
consoleLog(domNode.nodeName + "#" + domNode.id + " -- show()");
} catch(e) {}
self.setTargetState(state);
self.dispatchEvent("begin");
self.addEventListener(endEvents, onendListener);
self.removeEventListener(beginEvents, onbeginListener);
//if (self.parentNode.timeContainer == "excl") consoleLog("show");
};
答案 0 :(得分:1)
在播放之前检查属性是否等于活动:
$(document).ready(function () {
if($('#slide3').attr('smil') == 'active') {
$('#foo').prop('autoplay', true);
}
else {
$('#foo').prop('autoplay', false);
}
});