document.querySelectorAll('a:visited')
总是返回空的 NodeList,即使 DOM 有一些访问过的链接。
我已经在 Chrome 中尝试过。是否有任何已知的错误或预期的行为?
如果我在样式表中使用它而不是 querySelectorAll,虽然:visited
效果很好。
a:visited{
color:yellow;
}
我认为伪类可以作为querySelectorAll()
.
document.querySelectorAll('a:visited')
总是返回空的 NodeList,即使 DOM 有一些访问过的链接。
我已经在 Chrome 中尝试过。是否有任何已知的错误或预期的行为?
如果我在样式表中使用它而不是 querySelectorAll,虽然:visited
效果很好。
a:visited{
color:yellow;
}
我认为伪类可以作为querySelectorAll()
.
我找不到任何专门针对 Chrome 引用此行为的来源,但通常会这样做以防止页面上的代码能够访问用户历史记录,这是一个隐私问题。
Selectors API 有一个专门讨论这个问题的部分。这是一个相关的小片段:
历史盗窃是一个潜在的隐私问题,因为
:visited
选择器中的伪类允许作者查询哪些链接被访问过。
...
正如选择器...中定义的那样,用户代理可以将所有链接视为未访问的链接。