<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head><body>
<div>
<ul id="nav">
<li>
<a href="#">a1</a>
</li><li>
<a href="#">a2</a>
</li>
</ul>
</div>
</body>
</html>
<script type="text/javascript">var arr = document.getElementById("nav").getElementsByTagName("a");
for(i =0 ;i <arr.length;i++)
{
arr[i].onclick =function aa(){alert("xxxxxxxxx");};
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head><body>
<div>
<ul id="nav">
<li>
<a href="#">a1</a>
</li><li>
<a href="#">a2</a>
</li>
</ul>
</div>
</body>
</html>
<script type="text/javascript">var arr = document.getElementById("nav").getElementsByTagName("a");
for(i =0 ;i <arr.length;i++)
{
arr[i].onclick =function aa(){alert("xxxxxxxxx");};
}
</script>
这句是执行aa()函数,将其返回值赋给onclick事件,当然会出错了
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head><body>
<div>
<ul id="nav">
<li>
<a href="#">a1</a>
</li><li>
<a href="#">a2</a>
</li>
</ul>
</div>
</body>
</html>
<script type="text/javascript">var arr = document.getElementById("nav").getElementsByTagName("a");
for(i =0 ;i <arr.length;i++)
{
arr[i].onclick =aa(i);
}
function aa(i)
{
alert(i);
}</script>
是错误的,后面的function(i){alert(i);}会覆盖前面的,即function(1){alert(1);}会覆盖function(0){alert(0);}
lz不妨这样:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head><body>
<div>
<ul id="nav">
<li>
<a href="#" value=1>a1</a>
</li><li>
<a href="#" value=2>a2</a>
</li>
</ul>
</div>
</body>
</html>
<script type="text/javascript">var arr = document.getElementById("nav").getElementsByTagName("a");
for(i =0 ;i <arr.length;i++)
{
arr[i].onclick =function() {alert(this.value);};
}
</script>
<html>
<head>
<title>无标题文档</title>
</head>
<body>
<div>
<ul id="nav">
<li><a href="#">a1</a></li>
<li><a href="#">a2</a></li>
</ul>
</div>
</body>
</html>
<script type="text/javascript">
var arr = document.getElementById("nav").getElementsByTagName("a");
for(i =0 ;i <arr.length;i++)
{
arr[i].value=i;
arr[i].onclick =function() {alert(this.value);};
}
</script>
<head>
<title>无标题文档</title>
</head>
<body>
<div>
<ul id="nav">
<li><a href="#">a1</a></li>
<li><a href="#">a2</a></li>
</ul>
</div>
</body>
</html>
<script type="text/javascript">
var arr = document.getElementById("nav").getElementsByTagName("a");
for(i =0 ;i <arr.length;i++)
{
arr[i].value=new Array(i,i);
arr[i].onclick =function() {for(var j=0;j<this.value.length;j++){alert(this.value[j]);}};
}
</script>
{
arr[i].onclick = function(){aa(j++)};
}