我在 Youtube 本身上覆盖视频时遇到了问题,但通过更改设计解决了这个问题(不再需要覆盖它们)。
所以我有一个用户可以运行的脚本,它调用一个javascript文件在当前网页上做其他事情。它所做的一件事是打开一个覆盖页面的灯箱。当然它不会涵盖嵌入的 Youtube 视频,所以我需要做一些更改。我做了必要的更改,但没有奏效。我不断尝试,最终制作了一个只有嵌入视频和 .jpg 的页面(如果没有图像,我的脚本将无法运行)。
我查看了 Pinterest 脚本添加到嵌入式视频部分的内容,虽然它几乎相同,但它们确实有一个 autoplay=0 ,所以我添加它只是为了我自己可以看到它完全一样。如果我运行 Pinterest 脚本并关闭它,然后运行我的,我的工作正常。如果我运行我的,然后运行 Pinterest 脚本,然后再次运行,我的工作。所以我相信这意味着我不会添加任何内容来告诉页面“继续把视频放在最上面”。
我添加 wmode 的脚本部分:
var players = document.getElementsByTagName('embed');
var len = players.length;
for(var i=0;i<len;i++){
players[i].setAttribute('wmode', "transparent");
players[i].src += "?autoplay=0&wmode=transparent";
}
最小页面html:
<html>
<head>
</head>
<body>
<img src="img/title.jpg">
<object width="425" height="350">
<param name="movie" value="http://www.youtube.com/v/OOpkr8uNWpk"></param>
<embed src="http://www.youtube.com/v/OOpkr8uNWpk" type="application/x-shockwave-flash" width="425" height="350"></embed>
</object>
</body>
在 Pinterest 脚本之后:
<object width="425" height="350">
<param name="movie" value="http://www.youtube.com/v/OOpkr8uNWpk">
<embed src="http://www.youtube.com/v/OOpkr8uNWpk?autoplay=0&wmode=transparent" type="application/x-shockwave-flash" width="425" height="350" wmode="transparent">
</object>
在我之后:
<object width="425" height="350">
<param name="movie" value="http://www.youtube.com/v/OOpkr8uNWpk">
<embed src="http://www.youtube.com/v/OOpkr8uNWpk?autoplay=0&wmode=transparent" type="application/x-shockwave-flash" width="425" height="350" wmode="transparent">
</object>
由于它们是相同的,我不知道为什么它不起作用。