【问题标题】:Brightcove attachevent failingBrightcove attachevent 失败
【发布时间】: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


    【解决方案1】:

    事件是brightcove.api.events.MediaEvent.PLAY,而不是brightcove.api.MediaEvent.PLAY

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

    您可能还想考虑使用current version of Brightcove's player 而不是这个版本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-01-23
      • 2011-02-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-16
      相关资源
      最近更新 更多