0

jetpack(mozillaの拡張機能開発フレームワーク)に、ページ内の訪問したリンクを見つける方法はありますか?

ところで:jqueryのa:visitedはfirebugで動作しますが、jetpackでは動作しません。ジェットパックのセキュリティの一部だと思います。

4

2 に答える 2

1

特定のリンクがJavaScriptから選択されているかどうかを読み取ることはできません。セレクターを使用して、間接的にのみ読み取ることができます。したがってa:visited、jQuery/Sizzleではサポートされていません。それがうまくいくのなら、それはjQueryがセレクターからブラウザーのネイティブquerySelectorAllインターフェースに移行しているからです。Selectors-APIレベル1をサポートしていない古いブラウザでは、機能しません。

document.querySelectorAll('a:visited')環境で履歴の読み取りが許可されているかどうかを直接確認できます。この仕様により、ブラウザーはそれをブロックできますが、IEは確かにブロックします。JetPackについて知りません。

currentStyle以前に履歴をスヌープするために使用された厄介なハックは、まだ適用可能である可能性がありますが、訪問したリンクを対象とするスタイルシートにルールを追加し、その/ getComputedStyle.cssjQuery内)を見て要素が一致するかどうかを確認します。

于 2010-03-26T18:07:52.290 に答える
1

@bobinceによって提案された解決策を除いて、Firefoxの最新バージョンのセキュリティ問題として排除されました。

于 2010-07-16T20:39:50.827 に答える