0

jetpack(mozilla 的扩展开发框架)有没有办法在页面中找到访问过的链接?

顺便说一句:jquery 的 a:visited 在 firebug 中有效,但在 jetpack 中无效。我猜这是喷气背包安全的一部分。

4

2 回答 2

1

您无法读取是否从 JavaScript 中选择了特定链接,您只能使用 Selector 间接进行。因此a:visitedjQuery/Sizzle 不支持;如果它对你有用,那只是因为 jQuery 将选择器转移到浏览器的本机querySelectorAll界面;在不支持 Selectors-API Level 1 的旧浏览器上,它不会工作。

可以document.querySelectorAll('a:visited')直接试试看环境是否允许读历史。该规范允许浏览器阻止它,当然 IE 也可以;我不知道JetPack。

以前用来窥探历史的讨厌的 hack 可能仍然适用,它是在样式表中添加一个针对访问链接的规则,并通过查看元素的currentStyle/ getComputedStyle.css在 jQuery 中)来查看元素是否匹配。

于 2010-03-26T18:07:52.290 回答
1

除了@bobince 建议的解决方案已作为最新版本的 Firefox 中的安全问题被消除。

于 2010-07-16T20:39:50.827 回答