从当前文档标题中的<link rel =“shortlink”/>中提取网址

时间:2011-12-28 20:14:54

标签: javascript dom

给出以下HTML:

<html>
  <head>
    <link href="http://example.com/g/8c" rel="shortlink" />
  </head>
  <body></body>
</html>

如何使用javascript在link, rel=shortlink中检索href =“”的内容?我不知道头部中的这些项目是否可以在DOM中访问。

head -tag可能包含更多链接标记,用于css等资源。 head -tag可能包含多个链接短链接(根据HTML5'规范'),在这种情况下,只需选择第一个。

3 个答案:

答案 0 :(得分:5)

我会用jQuery做到这一点:

$('link[rel=shortlink]').eq(0).attr('href');

其中:

  • $('link[rel=shortlink]')选择适当的元素
  • eq(0)选择第一个
  • attr('href')选择适当的属性

答案 1 :(得分:5)

您可以使用document.head获取头部,然后使用getElementsByTagName获取link代码。

var links = document.head.getElementsByTagName('link');
for(var link in links){
    if(links.hasOwnProperty(link)){
        var l = links[link];
        if(l.rel === 'shortlink'){
          console.log(l.href);
        }
    }
}

注意:document.head可能在所有浏览器中都不起作用(我认为它可能在IE中不起作用)。如果它不起作用,试试这个:

document.head = document.head || document.getElementsByTagName('head')[0];

答案 2 :(得分:3)

使用jQuery,我会这样做:

var link_href = $('link', 'head').attr('href');