2011-08-16 40 views
3

私は自分用のusercriptを書いています。私はpermalinksのリストを持っています。私はすでに訪れたものを隠したいと思います。私はjqueryを使用して、リンクが訪問されているかどうか(デフォルトの色=紫)をチェックし、そうであれば要素を隠すことができると考えていました。リンクが訪問されたかどうかを確認するにはどうすればよいですか?

しかし、実際にこれを確認する方法はわかりません。 .attr('style');は私にはborder: noneしか得られませんが、.css()は無効です。

リンクがクリックされたかどうかを確認するにはどうすればよいですか? 私はgreasemonkeyでfirefox 4.0.1をテストしていますが、私はchromeでそれを使用しています。

答えて

4

色のチェックはもう機能しません。このセキュリティ上の欠陥は修正されているためです。

+1

真:http://stackoverflow.com/questions/5394099/detect-visited-link-in-chrome –

+1

セキュリティ上の欠陥ザッツ!?!ユーザースクリプトでも?私はFirefoxが特定のものをuserscriptsとスライドさせることができることを知っています –

+1

私はJohniがプライバシー問題を意味すると思います。 AFAIK、これにはセキュリティ上の問題はなく、あなたの個人情報を公開するだけです。 – sligocki

3

a:visitedは、探しているセレクターです。これにより、ドキュメント内のすべての訪問済みリンクが返されます。

a:visited {display: none;} 
+0

そして、 'a:visited {display:none; } 'または':link:visited {display:none; } 'それらを隠すでしょう。 – feeela

+0

jqueryでどうすればいいですか? cc @feeela –

+0

$( 'a:visited')。hide(); – Josh

0

a:visited { display: none; }ルールを注入する方が簡単でしょうか?

あなたのGreasemonkeyスクリプト内でこのような何か:

var head = document.getElementsByTagName('head')[0]; 

var style = document.createElement('style'); 

style.type = 'text/css'; 
style.innerHTML = 'a:visited { display: none }'; 

head.appendChild(style); 
+0

これははるかに簡単だろう。さて、私はどのようにページに挿入するのですか?私はそれを書きますか?私は 'div.box a.item:visited {display:none; } '。どのように私はjqueryでそれを挿入するでしょう –

+0

@ acidzombie24:いくつかのコードで私の答えを更新しました。 –

+0

Cool。私は2つの問題に気付きます。 1)Firefoxは私にこれを可能にするように思わない。 'style.innerHTML = 'a {display:none}';'は動作しますが:visitedはしません。 2)リンク自体ではなく、ブロックする必要があります。 –

関連する問題