まだ読んでない
http://www.moongift.jp/list.html
読んでいないものだけ「まだ読んでない」
http://www.moongift.jp/2007/06/yet_read/
でも、なんかぼくのところのWindows XP SP2 + Internet Explorer 7ではちゃんと動いてないっぽい。だってリンク色が変わってるやつまでふつうに表示されてるもん。
「えっ。
もしかしてIE7ではこのセキュリティホールへの対策が
講じられているのですか?! さすがゲイツ様!」
と、Microsoft大好きっ娘のぼくは一瞬有頂天になった。…のだが、調べてみると別にそんなことはなかった。サンプルコードを書いてみた。
<html>
<head>
<title>SpyJAX on IE7</title>
<style>
a {
color: #0000ee;
}
a:visited {
color: #800080;
}
</style>
<script>
function dothat () {
var d = document;
var items = [ 'Yahoo', 'NeverVisited' ];
for ( var i=0; i<items.length; i++ ) {
var eListItem = d.getElementById( 'Item' + items[i] );
var eLink = d.getElementById( 'Link' + items[i] );
var st =
eLink.currentStyle
|| document.defaultView.getComputedStyle( eLink, '' )
;
eListItem.innerHTML +=
( st.color == '#800080' || st.color == 'rgb(128, 0, 128)' )
? 'visited'
: 'never visited :: ' + st.color
;
}
}
</script>
</head>
<body
onload="
dothat();
"
>
<h1>SpyJAX on IE7</h1>
<ul>
<li
id="ItemYahoo"
>
<a
id="LinkYahoo"
href="http://www.yahoo.co.jp/"
>http://www.yahoo.co.jp/</a>
</li>
<li
id="ItemNeverVisited"
>
<a
id="LinkNeverVisited"
href="http://www.never-exists-such-a-site.com/"
>http://www.never-exists-such-a-site.com/</a>
</li>
</ul>
</body>
</html>
Yahoo!にアクセスしてから表示すると、ちゃんとIE7(奥)でもFirefox2(手前)でも動作する。
よく観てみると、MOONGIFTのほうでa:visitedのカラーが
#800080
ということを前提にしていた。わたしのとこのIE7は#810081です!
ね。
あれー。なんでだべ>#810081なの
別に、IEの設定もいじってないのだが…。
で、別のマシンのIE6で調べてみると、こちらはa:visitedは
#800080
である。
あー…なんかしらないけど、IE6→IE7でデフォルトが変更になったのか。
たぶん、ゲイツ様のことなので、このプライバシー侵害バグのことを憂いて「カラー設定を変えて読み取れなくする」という先手を打たれていらしたに違いない。ジョブスとかいうハゲとはレベルが違うのだよ!
単純な問題だったのに遠回りしてしまったおばか>ぼく
…どちらにしてもユーザーサイドで設定を変更している可能性があるので、こういうときはサンプルコードのようにa:visitedのスタイルをきちんと指定しておいたほうがよいと思われますです>MOONGIFTさま
