ホーム > JavaScript > 外部リンクを別ウィンドウで開く

外部リンクを別ウィンドウで開く

target要素を使わずにリンク先を別ウィンドウで開く。
これの、もう一歩?進めたやつをメモ。

数日前にエントリーした内容では、設定したcssのclass指定をaタグ内に加えて記述すれば、そのリンク先が別ウィンドウで表示されるというものでしたが、以下のものは「外部へのリンク」をJavaScriptで判断して、その場合のみ別ウィンドウで開くというものになっています。(リンクURLにhttp://が含まれるかどうかによって)

勉強させていただいた書籍は「WebクリエイティブのためのDOM-Scripting-

window.onload = function (){
	var conf = {
		className:'externalLink'
	};
	var anchorList = document.getElementsByTagName('a');
	    for (var i=0, len=anchorList.length; i<len; i++){
			var a = anchorList[i];
			if (a.getAttribute('href').match(/^http:///)){
				a.className = conf.className;
				a.onclick = function (){
					window.open(this.getAttribute('href'), '_blank');
					return false;
				}
			}
		}
};

上記のソースを、任意の名前をつけた外部jsファイルに記述してリンクを張ります。
(自分の場合は参考書籍のそのまんま、externallinkという名前で)

<script type="text/javascript" src="externallink.js"> </script>

参考書籍の中でも詳しく解説されていますが、jQueryを使用することで、よりコンパクトに記述することも出来るようです。

コメント:0

コメントフォーム
入力した情報を記憶する

トラックバック:0

この記事のトラックバック URL
http://showzine.info/blog/2009/01/%e5%a4%96%e9%83%a8%e3%83%aa%e3%83%b3%e3%82%af%e3%82%92%e5%88%a5%e3%82%a6%e3%82%a3%e3%83%b3%e3%83%89%e3%82%a6%e3%81%a7%e9%96%8b%e3%81%8f.html/trackback
トラックバックの送信元リスト
外部リンクを別ウィンドウで開く - SHOWJIN*BLOG より

ホーム > JavaScript > 外部リンクを別ウィンドウで開く

検索
フィード

ページの上部に戻る