Abd*_*ady 12 javascript youtube iframe youtube-iframe-api
我正在尝试使用以下代码嵌入YouTube视频:
<iframe width="425" height="319" frameborder="0" wmode="Opaque"allowfullscreen=""
src="http://www.youtube.com/embed/8vJwFvFi4ZY?wmode=transparent">
</iframe>
Run Code Online (Sandbox Code Playgroud)
虽然它工作正常,但它在控制台中出现此错误:
Chrome版本22.0.1229.94:
不安全的JavaScript尝试 从URL为http://www.youtube.com/embed/8vJwFvFi4ZY?wmode=transparent的框架访问URL为http://example.com/
的框架. 域,协议和端口必须匹配.Firefox版本17.0:
错误:拒绝访问属性'toString'的权限
我四处搜索,但我发现它可能是一个YouTube问题,他们应该解决它,
问题是:我怎样才能摆脱这个错误?(无论如何,甚至通过抑制它.)
Dav*_*ing 12
你不能阻止它,至少不是我知道的任何方式(我已经尝试了很多).iframe目标中有一个脚本试图访问您的文档,可能正在寻找可以调用以启用API的全局函数.
另一件事是,即使使用自己的iframe API,错误仍然存在:http://jsbin.com/izabed/1/edit
这没有任何害处,您的视频将正常工作.但是如果你在控制台中运行它,它看起来有点大胆.他们应该把它作为参数包括在内,起初我认为这是origin参数的概念,但它没有任何区别.
值得注意的是,他们自己的演示显示相同的错误(和其他).此外,如果您使用embed标记而不是iframe,它将不会显示任何错误.
所以你可以做这样的事情来防止大多数桌面浏览器中的错误:
if(haveflash) {
// use <embed>
} else {
// use iframe
}
Run Code Online (Sandbox Code Playgroud)