5

我正在尝试定位某个 div 中的链接。我了解如何定位所有链接,如下所示:

var colors = [ 'BlueViolet', 'CadetBlue', 'Coral', 'Crimson', 'DarkGoldenRod', 'DarkOliveGreen'],
    a = document.getElementsByTagName('a');

for(var i = 0; i < a.length; i++) {
    var elem = a[i],
        color = colors[0];
    elem.style.color = color;
    colors.push(color);
    colors.shift();
}

显然,它针对所有链接: http: //lexicantest.tumblr.com/

有没有办法让我定位某个 id/class 中的所有链接?

4

1 回答 1

17

对于身份证:

var a = document.getElementById('divYouwant').getElementsByTagName('a');
for (var i = 0; i < a.length; i++) {
    var elem = a[i],
        color = colors[0];
    elem.style.color = color;
    colors.push(color);
    colors.shift();
}

如果你想从一个类中抓取它,你必须抓取每个类,然后抓取每组锚标签......

var divs = document.getElementsByClassName('className');
for (var i = 0; i < divs.length; i++) {
    var a = divs[i].getElementsByTagName('a');
    for (var j = 0; j < a.length; j++) {
        var elem = a[j],
            color = colors[0];
        elem.style.color = color;
        colors.push(color);
        colors.shift();
    }
}

基本上,您遵循与获取所有链接相同的概念。唯一的区别是您不使用文档作为参考。首先,您获取所需的 div,然后从那里获取所有锚标记的数组。

于 2013-04-02T13:40:25.287 回答