如何使用类
获取div的“a”元素<div class="membox_externalcontent">
<!-- find "a" elements of here -->
<div>
我有这个代码来获取body的元素,我想改进它:
function xpathh(){
var nodesSnapshot = document.evaluate('//body//a', document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null );
for ( var i=0 ; i < nodesSnapshot.snapshotLength; i++ )
{
var href = String(nodesSnapshot.snapshotItem(i).getAttribute('href'));
console.log(href);
}
}
答案 0 :(得分:3)
使用find
,您可以将标记作为参数传递。
$('.membox_externalcontent').find('a');
答案 1 :(得分:2)
您可以使用jquery
var elems = $('.membox_externalcontent a');// array of <a> elements
或者:
var elems = $('.membox_externalcontent').find('a');// array of <a> elements
答案 2 :(得分:1)
如果您的意思是要查找<div>
中包含某个类的所有元素,那就是:
var elems = $('.membox_externalcontent *');
答案 3 :(得分:1)
假设允许jQuery,基于问题的标签:
var links = $('.membox_externalcontent a');
links.each(
function( i, v ) {
console.log(v.href);
}
);
答案 4 :(得分:0)
就像在CSS中一样:
$('.membox_externalcontent a');
你可以迭代那些像
这样的项目$('.membox_externalcontent a').each(function(){
console.log( $(this).attr('href') );
});
答案 5 :(得分:0)
这将是纯JavaScript解决方案,但我建议改为使用jQuery。
var foo = document.getElementsByTagName('div'),
i,
bar;
for (i = 0; i < foo.length; i += 1) {
if ((' ' + foo[i].className + ' ').indexOf(' membox_externalcontent ')
> -1) {
bar = bar.concat(
document.getElementById(foo[i].id).getElementsByTagName('a')
);
}
}
console.log(bar);