ホーム > その他 > JQueryで外部へのリンクにtarget=_blankを指定

JQueryで外部へのリンクにtarget=_blankを指定

2009 年 12 月 3 日 コメントをどうぞ コメント

検索エンジン大手のY社には、Yahooカテゴリ登録というサービスがあります。より多くのお客様に、キバンインターナショナルを知ってもらうために、カテゴリ登録申請を出していたのですが、「外部サイトへのリンクにtarget=_blankが指定されていない。」という理由で申請が保留されてしまいました。既に1000ページ近いコンテンツがあることを考えると、1つ1つのリンクを手で修正するのは困難です。そこで、JQueryを使って、外部サイトへのリンクにtarget=_blankを指定するプログラムを作成してみました。

<script src=”http://www.google.com/jsapi”></script>
<script>
if(typeof jQuery === “undefined”)google.load(“jquery”, “1.3.2″);
</script>
<script>
$(document).ready( function () {
var domain = location.href.match(/^https?(:\/\/[a-zA-Z0-9.]+)\//i)[1];
$(‘a[href^=http]‘).not(‘[href*="'+domain+'"]‘).attr(‘target’,'_blank’);
})
</script>

1行目~4行目:  jQueryが定義されていない場合に、jQueryをインポートします。
7行目: 現在のURLから、ドメイン部分だけを切り出します。
8行目: Aタグの中で、href属性にhttpで始まるURLが指定されており、そのアドレスが同一ドメインのものでない場合に、target属性に_blankを設定します。

弊社では、サイトの大半をWordPressで構築しているので、近日中にWordPressのプラグイン化することになりそうです。

カテゴリー: その他 タグ:
このページを印刷 このページを印刷
Get Adobe Flash playerPlugin by wpburn.com wordpress themes