JavaScriptを使用して新しいウィンドウでリンクを開く

target属性はフレームを使用する際にリンク先のフレームを指定するために使用するのが、本来の使い方である。XHTML 1.0 TransitionalとFramesetでは定義されている(どちらも非推奨要素とされている)が、XHTML 1.0 StrictやXHTML 1.1では採用されていない。
しかし、a要素やarea要素のtarget属性には代替する方法がない。そこでJavaScriptを使用してリンクを記述する方法を使う。

通常HTMLタグのみで使用したコード:

<a href="http://yourdomain.com/" target="_blank">yourdomain</a>

JavaScriptを使用した通常のコード:

<a href="javascript:void(0);" onclick="window.open('http://yourdomain.com/');">foo</a>

このコードではJavaScriptをオフにした環境ではリンクされない。また、ステータスバーにリンク先アドレスが記載されない為ユーザビリティに問題がある。

<a href="http://yourdomain.com/" onclick="window.open('http://yourdomain.com/'); return false;">foo</a>

ステータスバーにリンク先が表示され、JavaScriptがオフでもリンク先を参照することが可能だ。

この方法では全部のリンクにonclickを記述する必要になる。また、HTMLタグをシンプルにする方がベターなので、DOM(イベントリスナー)を使用してもっとシンプルなソースコードにする。
これはのちのち記載する予定。

タイトルとURLをコピーしました