1

TLDR; 再レンダリング時にビデオ プレーヤーが表示されない (バックボーン ビュー)

ブライトコーブが保持するグローバルな状態はありますか?

私は backbone.js を使用しており、この jst.ejs テンプレートを使用してバックボーン ビューを使用してページをレンダリングしています。初めてでも完璧に機能します。しかし、次のページに移動してから戻ると、もう表示されません。

<script language="JavaScript" type="text/javascript" src="http://admin.brightcove.com/js/BrightcoveExperiences.js"></script>
<script>
  window.BCVideo = BCVideoFunction(); //BCVideoFunction as module pattern.
</script>

<object id="bc_experience" class="BrightcoveExperience">
  <param name="includeAPI" value="true" />
  <param name="templateLoadHandler" value="BCVideo.onTemplateLoad" />
  <param name="templateReadyHandler" value="BCVideo.onTemplateReady" />
  <param name="bgcolor" value="#FFFFFF" />
  <param name="width" value="100%" />
  <param name="height" value="100%" />
  <param name="playerID" value="1426444499001" />
  <param name="playerKey" value="AQ~~,AAABTAHETAE~,G1RKcv5og48msI78DncnAb9MEySkUi_b" />
  <param name="isVid" value="true" />
  <param name="isUI" value="true" />
  <param name="wmode" value="transparent"/>
  <param name="dynamicStreaming" value="true" />
  <param name="wmode" value="transparent"/>
  <param name="@videoPlayer" value="<%= variables.video_id %>" />
</object>

再レンダリング後 (2 回目の訪問)、オブジェクトが存在することがわかります

 > window.bc_experience  `  
   <object type=​"application/​x-shockwave-flash" data=​"http:​/​/​c.brightcove.com ...
 # window.bc_experience.remove() doesn't help

それをdomから削除しても役に立ちません。ええ...助けてくれてありがとう!

4

1 に答える 1

0

<script>テンプレート内でタグを使用することは避けてください。外部スクリプトは必ずテンプレートの外側にある必要があり、次のものを置き換えることができます。

<script>
  window.BCVideo = BCVideoFunction(); //BCVideoFunction as module pattern.
</script>

と:

<% window.BCVideo = BCVideoFunction(); %>
于 2013-08-23T22:42:14.527 に答える