-1

How can i get "a" elements of the div with class

<div class="membox_externalcontent">
    <!-- find "a" elements of here  -->
<div>

I have this code for get a element of body and i like to improve it:

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);
    }
}
4

6 回答 6

3

使用find,您可以将标签作为参数传递。

$('.membox_externalcontent').find('a');
于 2013-09-06T18:25:18.217 回答
2

您可以使用以下方法轻松完成此操作jquery

在这里演示

var elems = $('.membox_externalcontent a');// array of <a> elements

或者 :

var elems = $('.membox_externalcontent').find('a');// array of <a> elements
于 2013-09-06T18:26:04.030 回答
1

假设 jQuery 是允许的,基于问题的标签:

var links = $('.membox_externalcontent a');

links.each(
  function( i, v ) {
    console.log(v.href);
  }
);
于 2013-09-06T18:25:32.763 回答
1

如果您的意思是要查找<div>某个类中包含的所有元素,那就是:

var elems = $('.membox_externalcontent *');
于 2013-09-06T18:23:24.730 回答
0

就像在 CSS 中一样:

$('.membox_externalcontent a');

你可以迭代这些项目,比如

$('.membox_externalcontent a').each(function(){
    console.log( $(this).attr('href') );
});
于 2013-09-06T18:25:01.073 回答
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);
于 2013-09-06T18:29:22.227 回答