尝试在控制台中选择指向特定DOM事件的所有链接。我在那儿好吗?

时间:2017-10-25 12:43:40

标签: javascript dom

只是在这里玩,想知道我是否在好的轨道上。为什么这段代码不起作用?正如我在标题中所说的,我想选择所有带有与事件相关的标题的标签并计算它们。提前感谢您的解释!

P.S。其他的方法是受欢迎的,只要它只支持vanilla JS和DOM,还没有jQuery。谢谢!




function numberOfEvents {
    var eventsLinks = 0;
    links = document.getElementByTagName('a');

    for(i = 0; i < links.length; i++) {
        if (links[i].hasAtributeNS("/en-US/docs/Web/Events", "title")) {
            eventsLinks += 1;
        }
    }
}

2 个答案:

答案 0 :(得分:1)

尝试一些简单的事情:

document.querySelectorAll('a[title*=Events]').length

注意:如果这是正确的答案,问题标题确实需要重新措辞。

答案 1 :(得分:1)

您可以按照您指定的路径进行操作,但有更短的方法可以执行此操作。以下是一个例子。

function numberOfEvents() {
    return document.querySelectorAll('[title="/en-US/docs/Web/Events"]').length;
}

console.log(numberOfEvents());
<a href="#" title="/en-US/docs/Web/Events">Link 1</a>
<a href="#" title="No">Link 2</a>
<a href="#" title="/en-US/docs/Web/Events">Link 3</a>
<a href="#" title="No">Link 4</a>
<a href="#" title="/en-US/docs/Web/Events">Link 5</a>