>>6
下手に「対策」を練るよりは、何もしない方が、かえって気付かれにくいということもある。いわゆる直接リンクをする人は、サーバ側で対処しない限り、どんな対策をしたってする。直接リンクをする人には効果がなく、直接リンクしない人に不便を強いるようなら、考え直した方が良いと思うよ。
まあとにかく。ちなみに >>5 はそのまま使える。でも、ページ内で他にスクリプトを使っているのなら以下のようにした方が良いかもしれない。
if (document.addEventListener)
document.addEventListener ('mouseover', function (e) {
if (e.target.nodeName == 'A') e.preventDefault ();
}, true);
else if (document.attachEvent)
document.attachEvent ('onmouseover', function () {
if (e.srcElement.nodeName == 'A') event.returnValue = true;
} );
else
onload = function () {
for (var nodes = document.links, i = 0, I = nodes.length; i < I; i++) {
nodes[i].onmouseover = function () { return false; };
}
};
unload 時にイベントリスナを削除を削除した方が良いかもしれないが、略。