我有一个 HTML 页面,上面有几个链接。我想让所有这些链接在不同的选项卡中打开,所以我尝试使用
var foo = document.getElementsByTagName("a");
for(var i = 0; i < foo.length; i++) {
foo[i].target = "_blank";
}
但是为什么这不起作用(据我所知,getElementsByTagName()
返回一个数组,我还不如错了)?
我有一个 HTML 页面,上面有几个链接。我想让所有这些链接在不同的选项卡中打开,所以我尝试使用
var foo = document.getElementsByTagName("a");
for(var i = 0; i < foo.length; i++) {
foo[i].target = "_blank";
}
但是为什么这不起作用(据我所知,getElementsByTagName()
返回一个数组,我还不如错了)?
尝试使用setAttribute
并将您的脚本放入window.onload
处理程序中(这是为了确保DOM Hierarchy
完全构建并且您可以访问DOM Element
s):
window.onload = function(){
var foo = document.getElementsByTagName("a");
for(var i = 0; i < foo.length; i++) {
foo[i].setAttribute('target', '_blank');
}
};
实际上getElementsByTagName
返回NodeList
对象,它有一些类似的功能Array
,但它不是一个Array
。
我也有同样的问题,我得到了答案。n 答案是:在结束 boday 标记之后使用指向您的 javascript 的链接,例如:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<a src="#">link</a>
<a src="#">link</a>
<a src="#">link</a>
<a src="#">link</a>
<a src="#">link</a>
<a src="#">link</a>
<input type="text" size="20"><br>
<input type="text" size="20"><br>
<input type="text" size="20"><br><br>
<script src="JavaScript/alert.js">
</script>
</body>
</html>