如何在param处于活动状态时播放视频

时间:2013-05-14 12:34:32

标签: javascript jquery video html5-video

我正在使用timesheets.js制作SMIL演示文稿。

在JavaScript控制台中,我看到了:

<div id="slide3" class="transition" smil="active">
    <video id="foo" source type="video/mp4" src="foo.mp4">
</div>

参数:smil="active"可以是activedone

我想在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");
  };

1 个答案:

答案 0 :(得分:1)

在播放之前检查属性是否等于活动:

$(document).ready(function () {
  if($('#slide3').attr('smil') == 'active') {
     $('#foo').prop('autoplay', true);
  }
  else {
     $('#foo').prop('autoplay', false);
  }
});