我已经了解到我可以使用“//域/路径”格式来引用CSS和JavaScript,而不是具体说明是应该通过HTTP还是HTTPS加载资源。例子:
<link href="//ajax.googleapis.com/ajax/libs/jqueryui/1/themes/base/jquery-ui.css" rel="stylesheet" type="text/css" />
<script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
然后,浏览器使用与当前页面相同的协议(架构)加载资源。
是否所有浏览器都支持此功能,如果没有,哪些浏览器不支持?
答案 0 :(得分:3)
是的,但IE 6-7会使用此方法下载样式表两次。除此之外,它适用于所有常见的浏览器。请参阅Can I change all my http:// links to just //?,Paul Irish - The protocol relative URL。
答案 1 :(得分:1)
一般情况下,它会起作用。但是,在Everybody's Favorite Browser中有一些边缘情况,如果您从非ssl子域请求它将失败。
答案 2 :(得分:1)
根据this文章。
在ai或orimport上用于样式表,IE7和IE8 下载文件两次。然而,所有其他用途都很好。
关于IE 6
这在IE6中不起作用的原因是服务器正在使用SNI 推断要返回的证书。 XP(以及IE6)不支持 HTTPS堆栈中的SNI。