Youtube iframe wmode问题

时间:2010-10-29 10:31:04

标签: iframe youtube wmode

在jQuery中使用javascript,我添加一个带有youtube网址的iframe来在网站上显示视频但是从youtube加载到iframe中的嵌入代码没有wmode =“Opaque”,因此模式框上的页面显示在YouTube视频下方。

任何想法如何解决问题?

9 个答案:

答案 0 :(得分:238)

如果已有参数,请尝试将?wmode=opaque添加到网址或&wmode=opaque

如果不起作用,请尝试使用&wmode=transparent,这也适用于IE浏览器。

答案 1 :(得分:81)

尝试将?wmode=transparent添加到网址末尾。为我工作。

答案 2 :(得分:18)

如果您使用的是新的异步API,则需要添加如下参数:

<!-- YOUTUBE -->
// 2. This code loads the IFrame Player API code asynchronously.
var tag = document.createElement('script');
tag.src = "http://www.youtube.com/player_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

// 3. This function creates an <iframe> (and YouTube player)
//    after the API code downloads.
var player;
var initialVideo = 'ApkM4t9L5jE'; // YOUR YOUTUBE VIDEO ID
function onYouTubePlayerAPIReady() {
    console.log("onYouTubePlayerAPIReady" + initialVideo);
    player = new YT.Player('player', {
      height: '381',
      width: '681',
      wmode: 'transparent', // SECRET SAUCE HERE
      videoId: initialVideo,      
       playerVars: { 'autoplay': 1, 'rel': 0, 'wmode':'transparent' },
      events: {
        'onReady': onPlayerReady,
        'onStateChange': onPlayerStateChange
      }
    });
}

这是基于google文档和示例: http://code.google.com/apis/youtube/iframe_api_reference.html

答案 3 :(得分:8)

向网址添加?wmode=opaque似乎可以解决这个问题,虽然我还没有在IE中测试过它。

对于那些对之前提出的解决方案有困难的人,请注意,只有在您已经为URL提供其他参数时,初始&符号才会起作用。第一个参数必须有一个初始问号:http://www.example.com?first=foo&second=bar

答案 4 :(得分:3)

&amp;wmode=transparent添加到网址,然后您就完成了测试。

我在自己的wordpress插件YouTube shortcode

中使用了这种技术

如果遇到任何问题,请检查其源代码。

答案 5 :(得分:1)

只是一个提示! - 确保你想要在嵌入式视频上的元素上的z-index。我添加了wmode查询字符串,它仍然无效......直到我提升了另一个元素的z-index。 :)

答案 6 :(得分:0)

&wmode=opaque对我不起作用(chrome 10),但&amp;wmode=transparent清除了问题。

答案 7 :(得分:0)

我知道这是一个老问题,但它仍然出现在这个问题的热门搜索中,所以我添加了一个新的答案来帮助那些寻找IE的人:

&wmode=opaque添加到URL的末尾在IE 10中不起作用...

然而,添加?wmode=opaque可以解决问题!


在此处找到此解决方案:http://alamoxie.com/blog/web-design/stop-iframes-covering-site-elements

答案 8 :(得分:0)

最近我看到有时flash播放器无法识别&wmode=opaque,你也应该通过&WMode=opaque(注意大写)。