target=”_blank”で2つ出る

10年以上webの仕事やってますが、target=”_blank”でつくったリックをクリックするとタブが2つ出てしまうという現象。具合的にうとMovableTypeで作成したサイトでスマホ版とPC版をエージェントで振り分けているようなやつです。内部の背景が全くわからないので原因特定できませんでしたが、target=”new”で大丈夫っぽいです。
が、target=”hogehoge”でもnewと同じ挙動になります。なんでもいいって話のようです。

<a href="#" target="new">hoge</a>

で2つ出てしまう問題はいったんは解決するらしい。

if (0 !== $(e.nowTarget).find(">a").length) {
    var _target = $(e.nowTarget).find(">a");
    "_blank" === _target.attr("target") ? window.open(_target.attr("href")) : location.href = _target.attr("href"); //←ここで1回目
}

とはいえ、謎のJS発見。

Last update: 2016.07.27 (水)