08/07/06 05:05:49
>>726
a.hrefなら相対リンクとか関係なく絶対URI(絶対パスじゃなく)が返るから
こんな感じでいけると思う
(function() {
var MIME_TYPE = 'application/x-open-firefox-html';
var TARGET_URL = [
'URLリンク(www.nicovideo.jp)',
];
// メタ文字のエスケープしてない
var rTARGET_URL = new RegExp("^"+TARGET_URL.join("|^"));
// ページ内のクリックを拾う(OperaはEnterキーもクリック相当)
document.addEventListener('click', function(e){
// a > imgのときはimgがtargetになってしまったりするのでターゲットフェーズから上方向にアンカーを探す
// (selectSingleNodeはOperaが対応しているMSXML由来の非標準メソッド)
var t = e.target.selectSingleNode('ancestor-or-self::a[1]');
if (t && rTARGET_URL.test(t.href)) {
e.preventDefault();
location.href = 'data:' + MIME_TYPE + ';charset=utf-8,' + encodeURIComponent('\n<meta http-equiv="refresh" content="0; url=' + t.href + '">');
}
}, true);
})()