こんな感じのユーチューブ動画がありました...
<object id="video_1" class="a_video .......
ただし、a_video の css:
display:none;
IEでそれを隠していません。
埋め込まれた YouTube 動画を IE で非表示にする方法を知っている人はいますか?
私の記憶が正しければ、私も以前にこの問題を抱えていました。ビデオの表示は停止しますが、バックグラウンドで引き続き再生されるのが聞こえました。私が使用した解決策は、それを完全に削除し、必要に応じて元に戻すことでした.
このような:
(function($){
$(function(){
var videoCode = $('object').parent().html();
$('#toggleButton').bind('click',function(e){
if($('object').length) {
$('object').remove();
} else {
$("#container").append(videoCode);
}
});
});
})(jQuery);
この関数はいくつかのことを行います...まず、ビデオ (オブジェクト) に関連付けられた HTML コードを変数に設定して、それを記憶できるようにします。次に、ボタンにビデオを表示/非表示にする機能を与えます(それが意図された動作であると想定しています)。そのため、ボタンがクリックされると、ビデオが現在ページにあるかどうかを確認し、存在する場合は DOM から削除し、存在しない場合は、保存された HTML を取得してビデオに再適用します。容器。
それに付随するHTMLは次のとおりです。
<div id="container">
<object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/hQVTIJBZook&hl=en_US&fs=1&"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/hQVTIJBZook&hl=en_US&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object>
</div>
<a href="#" id="toggleButton">Toggle Video</a>
この IE8 バグを見てきました。問題が発生しているブロック要素で overflow: hidden を指定すると、うまくいくはずです。Youtube 埋め込みコードを何かに入れる必要があるかもしれません。