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