3种提取页面所有链接的方法(假设是a标签的链接)

如题,一道uc国际的面试题:

暂时想到的解法:

①方法1:

var urls = document.querySelectorAll('a');
for(var i = 0; i < 3; i++){
    console.log(urls[i]);
}

 

②方法2:

var uu = document.getElementsByTagName('a');
 for(var i = 0; i < 3; i++){
      console.log(uu[i]);
}

 

③方法3:

var allNodes = document.getElementsByTagName('*');
for(var i = 0,len = allNodes.length; i < len; i++){
    if (allNodes[i].nodeName.toLowerCase() === 'a') {
          console.log(allNodes[i]);
    };
}

 

④方法4:

var areg = /^<a\b[^>]+\bhref="([^"]*)"[^>]*>([\s\S]*?)<\/a>$/;
var allText = document.getElementsByTagName('*');
for(var i = 0,len = allNodes.length; i < len; i++){
    if (areg.test(allNodes[i].toString())) {
        console.log(allNodes[i]);
    };
}

 

后面有想法,再补充吧。

posted on 2017-06-16 17:55  我不是金灿  阅读(825)  评论(0)    收藏  举报

导航