我想在新标签页中打开某些链接。由于无法将其直接设置到<a>标记中,因此我想将链接放入具有特定类名的<span>标记中,并通过JavaScript设置target属性。

我以为这很容易,但是我无法正常工作:

addOnloadHook(function () {
  document.getElementByClassName('newTab').getElementsByTagName('a').setAttribute('target', '_blank');
});

<span class="newTab"><a href="http://www.com">Link</a></span>


我究竟做错了什么?

最佳答案

document.getElementByClassName不存在,正确的功能是document.getElementsByClassName(请注意额外的s)。它返回匹配节点的数组,因此您必须给出一个索引:

addOnloadHook(function () {
  document.getElementsByClassName('newTab')[0].getElementsByTagName('a')[0].setAttribute('target', '_blank');
});

关于javascript - 为什么getElementByClassName-> getElementsByTagName-> setAttribute不起作用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3797857/

10-12 01:00