2013-12-19 96 views
1

当我在网页上嵌入Youtube视频并在本地进行测试时,根据浏览器的不同,没有任何事情发生或浏览器甚至锁定。发布页面,在线测试,并且工作正常。显然不是一个理想的开发/测试场景。我正在使用来自Youtube的iframe嵌入代码。嵌入式Youtube视频不在本地播放,在线播放时很好

它确实看起来像一个跨域安全问题,但我没有看到使用Firebug的错误,并没有找到任何提及,也没有任何人有类似的问题。可能只是想念一些东西,但我很难过。我不喜欢被困难了很久。

的例子,在线工作,但不在本地,即使这是体内唯一代码:

<iframe width="640" height="360" src="//www.youtube.com/embed/INg83kArY4g?rel=0" frameborder="0" allowfullscreen></iframe> 

BTW,没有问题的嵌入和我自己的Web服务器上时,本地播放同一视频(不在本地)。任何帮助,将不胜感激。

回答

2

该文件将不会加载本地的原因是因为你所定义的属性src时使用的协议相对URL。 当浏览器解析src时,它会预先输入查看该页面的方案(http:或https :)。如果在本地查看该页面,则浏览器将在该URL前加上file,这将导致无效的URL 。

您可以通过在src上插入方案来弥补问题,例如,

src="http://www.youtube.com/embed/INg83kArY4g?rel=0" 

或通过在本地服务器上提供该页面。

参考
Paul Irish

+0

是的!我非常明白为什么没有http/https。完全没有意识到这将意味着文件:在本地添加,但这是有道理的。感谢解决方案和原因。 –

0

尝试增加的“http:”到src属性的开头:

<iframe width="640" height="360" src="http://www.youtube.com/embed/INg83kArY4g?rel=0" frameborder="0" allowfullscreen></iframe> 
相关问题