サイトアイコン WATASHI.xyz

jQueryでリンク先が別ドメインのURL(外部サイト)かどうか判定して自動的にtarget=”_blank” rel=”noreferrer noopener”を加えるスクリプト

完全に備忘録です。

前提条件

$(function() {
    $('a').each(function() {
        let href = $(this).attr('href');
        let target = $(this).attr('target');

        // href属性がhttp(s)で始まっているか
        let link = href.match(/^https?:\/\//);
        if ( link == null ) return;

        // target属性に先客がいないか
        if ( typeof target === 'undefined' || target === false ) return;

        // ドメインが閲覧中ページと同じか
        if ( href.indexOf(location.host) != -1) return;

        $(this).attr('target', '_blank');
        $(this).attr('rel', 'noreferrer noopener');
    }
});

メモ

モバイルバージョンを終了