2015-12-09 40 views
1

我想將事件附加到brightcove視頻,但無法觸發它。遵循Brightcove文檔中的所有步驟。這裏是我的代碼:Brightcove attachevent失敗

<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」。當視頻開始播放時,我需要製作一些功能來停止輪播。

不知道我是否缺少任何東西。任何想法?

P.S.傳送帶中有多個視頻(引導程序),每個視頻ID都隨着一個唯一的ID一起更改。

請建議。 謝謝 Ayush

回答

1

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

此外,此代碼僅適用於通過HTTPS提供的頁面。如果通過HTTP提供頁面,則不應包含secureConnectionssecureHTMLConnections params--瀏覽器將阻止頁面與Flash對象之間的通信破壞API。我不知道你使用的是HTTP還是HTTPS,但是注意到你使用了一個協議相對URL作爲播放器腳本。

您可能還想考慮使用current version of Brightcove's player而不是此版本。

+0

謝謝Misterben ..它工作:) –