ハイパーリンクを設定するa要素には次のようにtarget属性に"_blank"を指定すると新規のウィンドウを開いてリンク先を読み込むことができる。
<a href="http://kumao.net/" target="_blank">別ウィンドウで開きます。</a>
別のウエブサイトへのリンクは、新規のウィンドウで開く方が便利だとか、またそうあるべきだと言う意見も多い。
しかし、このtarget属性はXHTML 1.1、XHTML 4.01、XHTML1.0 Strictにおいては未定義で使用できない。
仮に制作者側がtarget="_blank"を指定しなくても、別ウィンドウで開きたいユーザーは自ら操作して(Windowsの場合は、Shiftキーを押しながらマウスの左クリック)実行可能である。
しかし、実際にはよそ様のウエブサイトにリンクする場合など、新規のウィンドウで開きたい事がある。
その方法としては次のようなJavaScriptを使う事が有望である。
<a href="kumao.net/" onclick="window.open('kumao.net/'); return false;">別ウィンドウで開きます。</a>
こらなら、ステータスバーにリンク先が表示され、JavaScript が off でもリンク先に飛ぶことがでるが、いちいちonclick〜と毎回書くのが面倒なのでもっといい方法が無いかと調べた結果次の記述を参考に rel= "external"という方法を使わせていただくことにした。
Opening a link in a new window - the valid way
-------------------------------------------------
//external.js
function externalLinks(){
if(!document.getElementsByTagName){
return;
}
var _1=document.getElementsByTagName("a");
for(var i=0;i<_1.length;i++){
var _3=_1[i];
if(_3.getAttribute("href")&&_3.getAttribute("rel")=="external"){
_3.target="_blank";
}
}
}
window.onload=externalLinks;
----------------------------------------------------
このjsファイルをインクルードし、次のように aタグにrel="external"と指定と別ウィンドウで開く。
<a href="kumao.net/" rel="external">別ウィンドウで開きます。</a>



コメントする