JS获取<img>里面的name值而改变SRC!!

<img src="pian2.jpg" name="xiao1" border="0">
<img src="pian1.jpg" name="xiao2" border="0">
<img src="pian1.jpg" name="xiao3" border="0">

<script language="javascript">
var i=0;
var tu=new Array( );
tu[0]="xiao1";
tu[0]="xiao2";
tu[0]="xiao3";

function show( )
{
var j;
for(j=0;j<tu.length;j++)
{
document.tu[j].src="pian1.jpg";
}
document.tu[i].src="pian1.jpg";
i=i+i;
if(i>=tu.length)
{
i=0;
}
setTimeout("show( )",2000);
</script>
我获取name值显示错误。。如果把name改成id后:
img:
<img src="pian2.jpg" id="xiao1">
JS:
document.getElementById(tu[i]).src="img/pian2.jpg";
可以正确显示。。。
我认为错误可能在命名集合的地方。。
tu[0]="xiao1";当获取tu[0]的值时可能把""也包含进去啦。。所以不对。。
请高手用name获取起值。。= =。。

第1个回答  推荐于2016-11-18
<!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 id="imglist">
<img src="pian2.jpg" name="xiao1" border="0">
<img src="pian1.jpg" name="xiao2" border="0">
<img src="pian1.jpg" name="xiao3" border="0">
</div>

<script language="javascript">
var imgarr=document.getElementById("imglist").getElementsByTagName("img");
for(i=0;i<imgarr.length;i++){
imgarr[i].src=imgarr[i].name;
}
</script>
</body>
</html>本回答被提问者采纳
第2个回答  2012-03-23
getElementsByName() 获取的是一组如果只有一个电话用[0] 试试,
还是推荐你用Jquery实现吧,方便简洁
相似回答