0

このコードは、配列内のページ内のすべてのリンクを取得するための最良のソリューションですか?

 var allLinks = document.getElementsByTagName('a');

または、これよりも良い解決策はありますか?

この後、配列「allLinks[i]」内のすべてのリンクを新しいタブで開くにはどうすればよいですか?

4

1 に答える 1

2

すべての 'a' html タグに新しい 'target' 属性を付けるだけで、Chrome はデフォルトですべてのリンクを新しいタブで開きます。

jQuery を使えば、答えは簡単です。

$('a').each(function(){ $(this).attr('target', '_blank'); });

または純粋なJavaScriptで

var allLinks, link, _i, _len;

allLinks = document.getElementsByTagName('a');

for (_i = 0, _len = allLinks.length; _i < _len; _i++) {
  link = allLinks[_i];
  link.setAttribute('target', '_blank');
}

またはコーヒースクリプトで

allLinks = document.getElementsByTagName('a')

for link in allLinks
 link.setAttribute 'target', '_blank'
于 2012-06-15T11:23:37.417 に答える