javascript - document.querySelectorAll ('a:visited' ) 不起作用

标签 javascript css google-chrome css-selectors selectors-api

document.querySelectorAll('a:visited') 总是返回空的 NodeList,即使 DOM 有一些已访问的链接也是如此。

我已经在 Chrome 中试过了。是否存在任何已知错误或预期行为?

虽然 :visited 如果我在样式表中使用它而不是 querySelectorAll 则工作得很好。

a:visited{
    color:yellow;
}

我认为伪类可以作为querySelectorAll()的参数。

最佳答案

我找不到任何来源专门针对 Chrome 引用此行为,但通常这样做是为了防止页面上的代码能够访问用户历史记录,这是一个隐私问题。

选择器 API 有 a section致力于这个问题。这是一个相关的小片段:

History theft is a potential privacy issue because the :visited pseudo-class in Selectors allows authors to query which links have been visited.
...
As defined in Selectors..., user agents may treat all links as unvisited links.

关于javascript - document.querySelectorAll ('a:visited' ) 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16030576/

相关文章:

javascript - 将光标放在 keyup 上文本的末尾

javascript - 2 路绑定(bind)在 AngularJS 重复中不起作用

javascript - 通过移动浏览器在 whats-app 上共享内容时面临数据绑定(bind)问题

当屏幕缩小时,CSS 视频背景不会消失

java - Selenium Connection Reset : Unable to find an exact match for CDP version 96, 所以返回找到的最接近的版本:95

javascript - 在 chrome 中启用 html5 音频播放器的下载按钮

javascript - Bootstrap 图片上传 不显示

html - 绝对元素不相对于其容器定位

jquery - Bootstrap 数据表表工具按钮显示奇怪的图像

jquery - 显示和隐藏图像(切换图像)