如何获取网站的所有src和href属性

How to get all the src and href attributes of a web site

我想要一种获取网站中所有 src 和 href 属性(如图像和链接)的方法。我怎样才能在 javascript 中做到这一点? 我试试这个:

var ilist=document.links;

for(var i = 0; i < ilist.length; i++) {
   if(ilist[i].href) {
       alert(ilist[i].href)
   }
}

但是对于某些东西,这是行不通的。仅适用于 .我想要所有标签的所有 href 和所有 src。有人可以帮助我吗?

使用 jquery 你可以 运行 使用 all 选择器

在所有元素上的每个
$( "*" ).each(function() {
     $(this).attr("src");
});

使用纯 JS,您可以执行以下操作: 我们给出的字符串 querySelectorAll 只是一个普通的 CSS 选择器。

var srcNodeList = document.querySelectorAll('[src],[href]');
for (var i = 0; i < srcNodeList.length; ++i) {
  var item = srcNodeList[i];
    if(item.getAttribute('src') !== null){
         alert(item.getAttribute('src'));
    }
    if(item.getAttribute('href') !== null){
         alert(item.getAttribute('href'));
    }
}

这是 fiddle:https://jsfiddle.net/vpbepvco/1/

使用jQuery,但你必须注意性能。

$("[src],[href]").each(function(){
   var $el = $(this);
   if( $el.is("a") ) {
      // do some stuff with A element
   } else if( $el.is("img") ) {
      // do some stuff with A element
   }
 });