0
<video controls="controls" width="640" preload="none" poster="{_file.F_FILE_THUMB_IMAGE}" id="{_file.U_PLAYER_ID}" onclick="this.play();this.onclick=null;" />

fancyboxを開いたときに、上記を使用してビデオを再生しようとしています。現時点ではこれを行っていますが、fancyboxを閉じてから再度開くと、this.onclick=nullが原因でビデオが再び再生されません。部

this.onclick = null;がないと、再生中のビデオをクリックするたびに、onclickが干渉します。一時停止ボタンをクリックしても、ビデオは一時停止しません。

Androidデバイスで動画を再生するには、onclick = "this.play();が必要です。そうしないと、fancyboxがポップアップすると、動画の再生がまったく拒否されます。

ビデオタグの自動再生はオプションではありません。すべてのビデオがdivに非表示になっていて、ページに複数あるため、ページの読み込み時にすべてのビデオを再生するだけです。

私はこれで立ち往生していて、いくつかの助けが必要です、誰かがこれを回避する方法についてのアイデアを持っていますか?

4

2 に答える 2

2

ファンシーボックスを作成するときは、onClick イベントをリセットする関数を含む onClosed イベント ハンドラーを追加する必要があります。

$("#exemple").fancybox({
    'onClosed' : function() {
        $("#example").attr('onclick',"this.play();this.onclick=null;");
    } 
});
于 2012-04-27T18:57:50.883 に答える
1

変更してみる

onclick="this.play();this.onclick=null;" 

onclick="this.play();this.onclick=null;"  
//OR
onclick="this.play(); return false;"
于 2012-04-27T18:55:00.713 に答える