是否在没有所有浏览器支持的协议的情况下链接到CSS或JavaScript?

时间:2012-02-21 08:18:00

标签: javascript css http https

  

可能重复:
  Can I change all my links to just //?

我已经了解到我可以使用“//域/路径”格式来引用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>

然后,浏览器使用与当前页面相同的协议(架构)加载资源。

是否所有浏览器都支持此功能,如果没有,哪些浏览器不支持?

3 个答案:

答案 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子域请求它将失败。

http://paulirish.com/2010/the-protocol-relative-url/

答案 2 :(得分:1)

根据this文章。

  

在ai或orimport上用于样式表,IE7和IE8   下载文件两次。然而,所有其他用途都很好。

关于IE 6

  

这在IE6中不起作用的原因是服务器正在使用SNI   推断要返回的证书。 XP(以及IE6)不支持   HTTPS堆栈中的SNI。