search

Home  >  Q&A  >  body text

前端 - javascript的src中http或https有无的问题

引用某网站这样一段javascript

<script type="text/javascript" src="//assets.appsample.com/js/common.js"></script>

放到html中却不能正常生效,在src处加上http:才可以找到,为什么给的例子是这样?只用双斜线//是合法的吗?

ringa_leeringa_lee2900 days ago588

reply all(3)I'll reply

  • 伊谢尔伦

    伊谢尔伦2017-04-10 13:12:16

    可以肯定的告诉你直接使用//是合理的,这样做之后获取资源的原则会根据你访问的URL的协议改变而改变。也就是说如果你用http://xxx.com访问的话则此时就是http://assets.appsample.com/js/common.js。如果是使用https://xxx.com访问的话此时就是https://assets.appsample.com/js/common.js

    刚刚去搜索了一下,得知此种特性叫做“相对协议地址”,英文是叫做"Protocol Relative Urls",具体可以查看这个:Using Protocol Relative URLs to Switch between HTTP and HTTPS

    reply
    0
  • 怪我咯

    怪我咯2017-04-10 13:12:16

    哥们儿你是双击文件看的吧?注意地址栏是file:///,使用file协议的话,src中的//不会自动匹配SPDY或是HTTP的,想//正常的话,至少把你的文件放到静态服务器上用http访问。

    reply
    0
  • 巴扎黑

    巴扎黑2017-04-10 13:12:16

    直接去掉//呢?

    reply
    0
  • Cancelreply