【发布时间】:2015-12-10 05:59:15
【问题描述】:
我正在尝试将事件附加到 brightcove 视频但无法触发它。已遵循 Brightcove 文档中的所有步骤。这是我的代码:
<script language="JavaScript" type="text/javascript"
src="//sadmin.brightcove.com/js/BrightcoveExperiences.js">
</script>
<object id="myExperience" class="BrightcoveExperience" style="">
<param name="bgcolor" value="#FFFFFF" />
<param name="width" value="100%" />
<param name="height" value="100%" />
<param name="wmode" value="transparent" />
<param name="playerID" value="3971645786001" />
<param name="playerKey" value="AQ~~%2CAAADnJnNnnk~%2CltuihYvDjRIrUSABF-AQVf9CGuEE1y7k" />
<param name="isVid" value="true" />
<param name="isUI" value="true" />
<param name="dynamicStreaming" value="true" />
<param name="secureConnections" value="true" />
<param name="secureHTMLConnections" value="true" />
<param name="@videoPlayer" value="${item.videoId}" />
<param name="includeAPI" value="true" />
<param name="templateLoadHandler" value="BCL.myTemplateLoaded" />
<param name="templateReadyHandler" value="BCL.onTemplateReady" />
</object>
<script type="text/javascript">
//if (typeof brightcove != 'undefined') {
brightcove.createExperiences();
//}
</script>
<script type="text/javascript">
var BCL = {};
BCL.myTemplateLoaded = function (experienceID) {
console.log("loaded")
BCL.player = brightcove.api.getExperience(experienceID);
BCL.videoPlayer = BCL.player.getModule( brightcove.api.modules.APIModules.VIDEO_PLAYER);
BCL.APIModules = brightcove.api.modules.APIModules;
}
BCL.onTemplateReady = function (evt) {
console.log("ready");
BCL.videoPlayer = BCL.player.getModule( brightcove.api.modules.APIModules.VIDEO_PLAYER);
BCL.videoPlayer.addEventListener(brightcove.api.MediaEvent.PLAY, BCL.onMediaEventFired);
}
BCL.onMediaEventFired = function(evt) {
console.log('evt');
}
</script>
上面的代码将控制台输出显示为“已加载”和“准备就绪”,但是当我单击播放按钮时,播放事件不会将输出显示为“evt”。我需要做一些功能来在视频开始播放时停止轮播。
不确定我是否遗漏了什么。有什么想法吗?
附:轮播(引导程序)中有多个视频,每个视频 ID 都会随着唯一 ID 的变化而变化。
请提出建议。 谢谢 阿尤什
【问题讨论】:
标签: javascript api brightcove