networkingpath引用URI / Scheme相对URL
scheme相对URL(networkingpath引用)是我刚才发现的东西 – 你没有指定URL的scheme,并从当前的上下文中挑选它。
例如:如果当前scheme是HTTPS或http://domain.com/img.png
<img src="//domain.com/img.png" />
将parsing为https://domain.com/img.png
如果不是。
这似乎是一个非常简单的方法来解决在SSL页面上调用外部脚本或图像的麻烦问题,而不会引起页面上的某些内容不安全的可怕错误。
好处似乎很明显,但我似乎无法find的是大量的信息,并想知道是否有任何经验或有关计划相对URL(好或坏)的参考?
虽然我试图发现是否有任何浏览器,这导致问题(IE6-8,Chrome浏览器和Firefox的成功),我也有兴趣找出是否有任何经验,在不同的使用语言。 例如,如果您要在ASP中使用相对URL的scheme发布Response.Redirect
,它会起作用吗?
//domain.com/img.png
是根据RFC 3986完全有效的URI语法:第4.2节 。
这是相对于当前的scheme ,因此正如你所提到的,当在http和https之间切换时它可能是非常有用的,因为你不需要明确地指定scheme。
所有现代浏览器都将理解这种格式,包括IE 6。
进一步阅读堆栈溢出:
- 用
<script src="http://...">
replacehttp://是否有效? - 在
<script>
的源文件中使用//
如果你想支持IE 7和8,你可能想要考虑这个scheme样式表的相对URL会导致它们下载两次:
如果您在Internet Explorer 7和Internet Explorer 8中试用此function,则会看到使用协议相关URL指定的样式表会被下载两次。
如果他们希望Internet Explorer 7和8中的页面尽可能快,开发人员应避免使用协议相关的样式表url。
来源: http : //www.stevesouders.com/blog/2010/02/10/5a-missing-schema-double-download/