Brigatkave 附件备案
Brightcove attachevent failing
我正在尝试将事件附加到 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>
上面的代码给出了 "Loaded" 和 "ready" 的控制台输出,但是当我点击播放按钮时,播放事件没有给出 'evt' 的输出。我需要做一些功能来在视频开始播放时停止轮播。
不确定我是否遗漏了什么。有什么想法吗?
P.S。轮播中有多个视频 (bootstrap),视频 ID 随每个视频的唯一 ID 发生变化。
求推荐。
谢谢
阿尤什
事件是 brightcove.api.events.MediaEvent.PLAY
,而不是 brightcove.api.MediaEvent.PLAY
。
此外,此代码仅适用于通过 HTTPS 提供的页面。如果页面是通过 HTTP 提供的,则不应包含 secureConnections
和 secureHTMLConnections
参数 - 浏览器会阻止页面与 Flash 对象之间的通信,从而破坏 API。我不知道您使用的是 HTTP 还是 HTTPS,但注意到您对播放器脚本使用了相对协议 URL。
您可能还想考虑使用 current version of Brightcove's player 而不是这个版本。
我正在尝试将事件附加到 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>
上面的代码给出了 "Loaded" 和 "ready" 的控制台输出,但是当我点击播放按钮时,播放事件没有给出 'evt' 的输出。我需要做一些功能来在视频开始播放时停止轮播。
不确定我是否遗漏了什么。有什么想法吗?
P.S。轮播中有多个视频 (bootstrap),视频 ID 随每个视频的唯一 ID 发生变化。
求推荐。 谢谢 阿尤什
事件是 brightcove.api.events.MediaEvent.PLAY
,而不是 brightcove.api.MediaEvent.PLAY
。
此外,此代码仅适用于通过 HTTPS 提供的页面。如果页面是通过 HTTP 提供的,则不应包含 secureConnections
和 secureHTMLConnections
参数 - 浏览器会阻止页面与 Flash 对象之间的通信,从而破坏 API。我不知道您使用的是 HTTP 还是 HTTPS,但注意到您对播放器脚本使用了相对协议 URL。
您可能还想考虑使用 current version of Brightcove's player 而不是这个版本。