仅获取通过元素选择器选择的元素的指定属性列表

时间:2015-08-18 06:34:51

标签: javascript jquery

我需要在文档中获取前10个<p>元素,我可以使用$('p').slice(0,10)轻松完成。但是进一步说,我想为上面调用返回的每个元素只获得几个属性。例如。当我在脚本中执行$('p')时,我会使用childnodes, classname, firstchild, innerText, innerHTML等属性获取每个元素。我只对innertext and few others感兴趣。有没有办法可以为每个选定的元素指定我想要获取的属性列表?

1 个答案:

答案 0 :(得分:2)

jQuery选择返回的对象是DOM Node对象的包装器,它们将始终具有这些属性。您无法直接从选择元素中检索所需的属性。

如果您需要创建仅包含特定属性的传输对象,则需要使用Node对象所需的属性单独创建它们:

var elements = [];

$('p').slice(0, 10).each(function() {
  elements.push({
    tagName: this.tagName, 
    innerText: this.innerText, 
    className: this.className
  });
});