Youtube iframe api开始在Firefox中出错

时间:2013-07-04 04:53:50

标签: youtube-api

很奇怪的事。 最近几天我注意到在我的Firefox v22上,youtube iframe api我在几个网站上使用时开始出现如下错误:“TypeError:Value not an object”和“Error:Bad NPObject as private data!”。文件中都有http://s.ytimg.com/yts/jsbin/www-embed-player-vflX1WAR4.js 我的youtube播放器现在不能正常工作。 去年有其他人注意到此问题以及可能导致此问题的原因是什么? 在所有其他浏览器上,youtube api对我来说很好,因为它是befoe(我没有对我的网站做任何更改)

3 个答案:

答案 0 :(得分:1)

如果在调用player.loadVideoById(vid)时隐藏了播放器元素,它将在firefox中抛出错误“错误:错误NPObject作为私有数据”

查看http://jsfiddle.net/eyx4M/7/中的差异这将在chrome中发挥作用,警告“不安全的JavaScript尝试使用Url访问框架”,但在Firefox中它会抛出“错误:错误的NPObject作为私有数据”。

答案 1 :(得分:0)

iframe的来源应包含ORIGIN - domain。域应该可以从localhost / local network外部访问。

http://www.youtube.com/embed/<VIDEO_ID>?origin=http://DOMAIN

解决了我的问题。

答案 2 :(得分:-1)

我遇到了同样的问题。

此脚本修复了它:

<object width="640" height="390">
  <param name="movie"
       value="https://www.youtube.com/v/M7lc1UVf-VE?version=3&autoplay=1"></param>
  <param name="allowScriptAccess" value="always"></param>
  <embed src="https://www.youtube.com/v/M7lc1UVf-VE?version=3&autoplay=1"
       type="application/x-shockwave-flash"
       allowscriptaccess="always"
       width="640" height="390"></embed>
</object>

来源https://developers.google.com/youtube/player_parameters