1

こんな感じのユーチューブ動画がありました...

<object id="video_1" class="a_video .......

ただし、a_video の css:

display:none;

IEでそれを隠していません。

埋め込まれた YouTube 動画を IE で非表示にする方法を知っている人はいますか?

4

2 に答える 2

1

私の記憶が正しければ、私も以前にこの問題を抱えていました。ビデオの表示は停止しますが、バックグラウンドで引き続き再生されるのが聞こえました。私が使用した解決策は、それを完全に削除し、必要に応じて元に戻すことでした.

このような:

(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>
于 2010-04-20T19:19:39.993 に答える
0

この IE8 バグを見てきました。問題が発生しているブロック要素で overflow: hidden を指定すると、うまくいくはずです。Youtube 埋め込みコードを何かに入れる必要があるかもしれません。

于 2010-04-20T19:31:07.170 に答える