2015-12-09 3 views
1

Я пытаюсь подключить событие к видео яркой, но не могу его запустить. Соблюдайте все этапы документации Brightcove. Вот мой код:Brightcove attachevent failing

<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» и «готов», но когда я нажимаю на кнопку воспроизведения, событие Play не дает результат, как «ЭВТ». Мне нужно сделать некоторые функции, чтобы остановить карусель, когда начнется воспроизведение видео.

Не уверен, что у меня что-то отсутствует. Есть идеи?

P.S. В карусели (бутстрап) есть несколько видеороликов, для каждого из них - идентификатор видео, а также уникальный идентификатор.

Просьба предложить. Ayush

ответ

1

Мероприятие brightcove.api.events.MediaEvent.PLAY, а не brightcove.api.MediaEvent.PLAY.

Также этот код будет работать только на странице, обслуживаемой через HTTPS. Параметры secureConnections и secureHTMLConnections не должны включаться, если страница обслуживается через HTTP - браузер предотвратит связь между страницей и флэш-объектом, нарушающим API. Я не знаю, используете ли вы HTTP или HTTPS, но заметили, что вы используете относительный URL протокола для сценария игрока.

Возможно, вы захотите рассмотреть возможность использования current version of Brightcove's player вместо этой версии.

+0

Спасибо Misterben .. это сработало :) –