选择具有类和标记名的项目

时间:2014-04-07 11:24:29

标签: javascript dom

我想使用JS查找包含A标记和类Titanic的所有项目。如果没有querySelector,我将如何解决这个问题。我希望方法快。所以最好没有循环。

2 个答案:

答案 0 :(得分:2)

你不会离开循环。

您可以使用已包含页面中所有链接的document.links集合,并检查每个链接的类名称:

var el = [];
for (var i = 0; i < document.links.length; i++) {
    if (document.links[i].className == 'Titanic') {
        el.push(document.links[i]);
    }
}

演示:http://jsfiddle.net/TrhCG/

注意:links集合仅包含实际链接,即具有href属性的锚标记(和区域标记)。此外,比较类名的方法仅在元素仅包含该类名时才有效。

答案 1 :(得分:0)

您可以使用getElementsByTagName()函数来选择锚标记。您可以使用.classname属性检查类名。

var elems = document.getElementsByTagName('*'), i;
    for (i in elems) {
        if((' ' + elems[i].className + ' ').indexOf(' ' + matchClass + ' ')
                > -1) {
           /*Do something.*/
        }
    }

如果你使用jQuery,生活会容易得多。