jQueryでaタグが外部リンクかを自動判定して[target=”_blink”]を付ける

この記事は約2分で読めます。
広告

aタグが外部リンクだった時、よっぽどの理由がない限り別窓で表示する「target="_blink"」を付けるじゃない。
自分でHTMLを記述していれば当たり前に付けるけど、Wordpressの時はこうゆう気づかいって結構大事。
そういうプラグインを入れてもいいんだけど、js1行だけで済むので、この書き方のがお得感があるじゃない。

外部リンクか判定して自動で「target=”_blink”」場合この様に書きます。

jQuery
jQuery('a[href^=http]').not('[href*="'+location.host+'"]').attr({target:"_blink"});
デモ
このブログトップ
Google.com
Yahoo!Japan
Bing
DuckDuckGo

繰り返し処理の場合[each()]でループしなくちゃと思うけどこの記述だけで、ページにあるすべての外部リンクに適応できちゃうんだ。
コンソールログで見て分かりやすい様に、このページの外部リンクには[target="_blink"]の他に、追加で[data-comment="外部URLだよ"]を付けてあるから見てみてね!
1行で全ての外部リンクに対応するこの書き方は、こちらのブログを参考にしました。
ありがとうございます!

知ってたら教えて欲しいんだけど、「blink」の由来って、HTMLが作られた当時に何かをもじって付けられたって、むか~しどこかで読んだ気がするけど、探しても出てこない。
「どこかで読んだ」のが妄想だったのかわからないから、真実を知っている人がいたら教えてください。

コメント

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