Brightcove attachevent失败

时间:2015-12-09 14:43:38

标签: javascript api brightcove

我正在尝试将事件附加到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>

上面的代码将控制台输出显示为“已加载”和“就绪”,但是当我单击播放按钮时,Play事件不会将输出显示为“evt”。我需要制作一些功能,以便在视频开始播放时停止旋转木马。

不确定我是否遗漏了任何东西。有什么想法吗?

P.S。轮播(引导程序)中有多个视频,视频ID随每个视频ID一起更改以及唯一ID。

请建议。 谢谢 AYUSH

1 个答案:

答案 0 :(得分:1)

活动为brightcove.api.events.MediaEvent.PLAY,而非brightcove.api.MediaEvent.PLAY

此代码也仅适用于通过HTTPS提供的页面。如果页面是通过HTTP提供的,则不应包括secureConnectionssecureHTMLConnections参数 - 浏览器将阻止页面与闪存对象之间的通信中断API。我不知道您是使用HTTP还是HTTPS,但注意到您使用了播放器脚本的协议相对URL。

您可能还需要考虑使用current version of Brightcove's player而不是此版本。