例如utexas.edu
在路径前加/
<link rel="shortcut icon" href="/sites/default/files/webcentral_favicon_0.ico" type="image/x-icon" />
columbia.edu
没有,它只是以文件夹名称或路径
<link rel="shortcut icon" href="sites/all/themes/base/columbia2/images/favicon-crown.png" type="image/x-icon" />
这两者都是相对的,但我需要一种区别于绝对的方法。
当我使用相对路径或绝对路径时,如何逐步说明?
答案 0 :(得分:4)
URLS的格式如下
绝对:
方案相对:
// google.com链接使用与加载页面相同的方案
// en.wikipedia.org/apple-touch-icon.png
网站绝对:
/index.html
Page relative:
index.html,.. / index.html,。/ index.html
我真的不明白这个问题,但您似乎对相对/绝对网址的含义感到困惑。
如果您需要将相对网址转换为绝对网址,可以使用http://code.google.com/p/js-uri/
答案 1 :(得分:3)
如果href值中的第一个字符以/
开头,那么它相对于域的根。如果以.
开头,则同一目录.. ..
是上面的目录,这些目录可以堆叠。如果它不是从那些而不是//
或完整的URL开始,那么它是相对。实际上,.
和..
也是相对的。
请注意,它也可以从//
或https?
开始,在这种情况下,它将是绝对的。
答案 2 :(得分:1)
您只需检查前导斜杠:
var link = $('link[rel="shortcut icon"]').attr('href');
var start = link.charAt(0); // Returns the leading slash (or not...)
if(start=='/'){
return 'absolute';
}else{
return 'relative';
}
答案 3 :(得分:1)
如果您的“sites”目录位于您网站的根目录中,则两者都是等效的。顺便问一下,你在使用Drupal吗? Drupal允许您上传favicon,路径由它处理。
答案 4 :(得分:1)
难道你不能只在URL的开头找一个'http'吗?即使你安全地连接,如果它是一个完整的URL,它应该以http。
开头