求帮助,当鼠标移动到div元素上时,img图片不会切换。
<!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=utf-8" />
<title>ex6_1</title>
<script language="javascript">
function changePic(n) {
var myImg=document.getElementById("picbox");
myImg.src="images/pic"+n+".jpg";
}
</script>
</head><body>
<img id="picbox" src="images/pic1.jpg" />
<div>沙漠古堡</div>
<div>天山冰湖</div>
<div>自然村落</div>
<div>欧美钟楼</div>
<script language="javascript">
var divs=document.getElementsByTagName("div");
for(i=0;i<divs.length;i++) {
divs[i].onmouseover=function() {
changePic(i+1);
}
}
</script>
</body>
</html>

解决方案 »

  1.   

    在文件同目录下有images文件夹,images文件夹下有四张图片,分别是pic1.jpg,pic2.jpg,pic3.jpg,pic4.jpg。
      

  2.   

    闭包了,亲,改成这样
    for(i=0;i<divs.length;i++) {
    divs[i].onmouseover=(function(i){
        return function(){changePic(i)}
    })(i);
    }
      

  3.   

    或者:
    for(i=0;i<divs.length;i++) {
        divs[i].idx=i+1;
        divs[i].onmouseover=function() {
            changePic(this.idx);
        }
    }