2013-10-02 97 views
0

我有以下代碼Brightcove公司ready事件

function onBrightcoveReady(event) { 
    console.log(event.target || event); 
} 

experienceModule.getReady(function (result) { 
    if (result === true) { 
     onBrightcoveReady(experience); 
    } else { 
     experienceModule.addEventListener(brightcove.api.events.ExperienceEvent.TEMPLATE_READY, 
           onBrightcoveReady); 
    } 
}); 

的問題是,有時onBrightcoveReady功能不會被調用。我認爲這是因爲當調用getReady方法時,視頻還沒有準備好,但同時它已準備就緒。

如果我雙重檢查它的工作原理,但我仍然認爲它不安全。

experienceModule.getReady(function (result) { 
    if (result === true) { 
     onBrightcoveReady(experience); 
    } else { 
     experienceModule.getReady(function (result) { 
      if (result === true) { 
       onBrightcoveReady(experience); 
      } else { 
       experienceModule.addEventListener(brightcove.api.events.ExperienceEvent.TEMPLATE_READY, 
           onBrightcoveReady); 
      } 
     }); 
    } 
}); 

回答

0

爲此,最好使用templateLoadHandler播放器參數。

<param name="templateLoadHandler" value="onBrightcoveReady" />