Home > JavaScript・jQuery > yuga.js で、外部リンクを別ウィンドウで開く機能を area 要素にも適用する方法。

yuga.js で、外部リンクを別ウィンドウで開く機能を area 要素にも適用する方法。

[読了時間の目安:約 3 分]

小ネタです。
JavaScript が分かる人なら何の造作もないことなんですけど、分からなくて困ってる人が居るかも知れないので一応メモ。

設定方法

yuga.js の「外部リンクは別ウィンドウで開く」という機能は、デフォルトでは a 要素にのみ適用されます。
その記述がされているのは、以下の箇所(バージョン 0.7.1 で 148 行目)。

var e = $('a[href^="http://"]').not('a[href^="' + uri.schema + '://' + uri.host + '/' + '"]');

つまり、「a 要素の href 属性に、先頭が http:// の文字列が設定されていたら」という条件になっているわけです。
(ちなみに後半の「.not」以降は、URL が同じドメインだった場合、別ウィンドウで開く対象から外す、という処理(「ドメイン」って言っていいのかどうか分からないですけど))

なので、ここに条件を追加してやれば、a 要素以外でも別ウィンドウで開いてくれるようになるわけですね。
結果として、以下のようになります。

var e = $('a[href^="http://"], area[href^="http://"]').not('a[href^="' + uri.schema + '://' + uri.host + '/' + '"]');

作業内容としては、コピペしてカンマでつないで「a」を「area」に書き替えるだけです。

仕組みとしては単純なので、必要に応じて色々対応できそうですね。

逆に、「異なるドメインへのリンクでも、別ウィンドウで開く対象から外したい」という場合は、別記事に書いてますのでそちらをご覧ください。
»yuga.js で、別ウィンドウで開かないドメインを追加する方法。

小ネタでした~。

Comments:0

Comment Form
Remember personal info

Trackbacks:0

Trackback URL for this entry
http://blog.btmup.com/javascript/yuga-js-new-window-area-element.html/trackback
Listed below are links to weblogs that reference
yuga.js で、外部リンクを別ウィンドウで開く機能を area 要素にも適用する方法。 from btmup Blog

Home > JavaScript・jQuery > yuga.js で、外部リンクを別ウィンドウで開く機能を area 要素にも適用する方法。

リンク
フィード
メタ情報

このページのトップへ