我像这样使用了iframe API
<iframe id="youtubePlayer" type="text/html" width="100%" height="auto" src="http://www.youtube.com/embed/someid?enablejsapi=1&origin=http://myurl.com" frameborder="0"></iframe>
请注意,我已将src
更改为http
并添加了origin
,但仍然出现以下错误:
块引用 阻止原点为"https://www.youtube.com"的帧访问原点为"http://myurl.com"的帧。 请求访问的帧具有"https"协议,被访问的帧具有"http"协议。协议必须匹配。
该问题仅出现在 Safari 中。我做了一些调试,似乎Sf()
只在 www-embed.js 的 Safari 中调用。
谢谢!
看起来iFrame上的Safari实现有缺陷。在Safari上,YouTube iFrame API官方页面给出了相同的错误消息。所以目前没有办法规避这种情况,直到 Safari 解决这个问题。