0

シックボックス内に jw プレーヤーを表示し、ajax を介して jwplayer コードを呼び出しています。私がそれを呼び出すと、jwplayerのないthickboxが表示され、参照エラー「jwplayer is not defined」エラーが表示されるエラーコンソールが表示されます.jquery 1.8を使用しています。ページを更新せずに2回目に呼び出すと、内部のビデオが表示されますjwplayer とエラー コンソールにエラーが表示されません。次のコードを使用しています。修正方法を教えてください。

$.ajax {
    type: 'POST',
    url: 'modules/oneclickorder.php?divid=' + DIVID,
    success: function (data) {
        alert(data);
        $("#oneclickorder1").html(data);
        tb_show('Welcome', '#TB_inline?height=700&width=550&inlineId=' + DIVID + '&modal=true', null);
    }
})

oneclickorder.php ページ コード

 echo '<div id="testvideo"  style="display:none";>
 <div id="playvideo" style="width:549px;height:550px; background-color:#FFF;"></div> 
<script type="text/javascript" src="https://www.markettrendsignal.com/js/jwplayer.js">   </script>
  <script type="text/javascript">
 jwplayer("playvideo").setup({
  flashplayer: "https://www.markettrendsignal.com/js/player.swf",
  file:"reversalpatternsplugin.flv",
        height: 330,
        provider: "rtmp",
        streamer: "rtmp://s2qwctg3okfahu.cloudfront.net/cfx/st",
        width: 550,
     autostart:true
    });
  </script>
4

2 に答える 2

1

初めてスクリプトを実行したときに jwplayer の js ファイルがロードされていないため、そのように動作しています。

これが何が起こっているかの内訳です。

最初に ajax 関数を呼び出すと、.js ファイルをダウンロードして JavaScript コードを実行する HTML コードが返されます。問題は、ファイルがロードされる前にコードを実行することです。これはjavascriptを注入していることを思い出してください... document.readyはありません...あなたはすでにそれを通過しています。

関数を 2 回目に呼び出すと、.js ファイルが (最初から) 既に読み込まれているため機能します。

解決策:メイン ドキュメントに js ファイルを追加します。

于 2012-10-05T02:55:32.653 に答える
0
plugins/content/jw_allvideos/jw_allvideos/includes/js/wmvplayer/silverlight.js

すべてのコードをコピー
する エンコーディングを ANSI に変更します
すべてのコードを貼り付けて保存します。

于 2013-06-24T13:23:03.270 に答える