function check(obj){
var nodeList=document.getElementBtId("test").getElementsByTagName("div");
for(var i=0;i<nodeList.length;i++){
if(nodeList[i]==obj){
nodeList[i].style.backgroundImage="url('images/barbg02.jpg')";
}else{
nodeList[i].style.backgroundImage="url('images/barbg01.jpg')";
}
}
}<div id="test">
<div onclick="check(this)">如果点击的是这里,改变这里的背景图</div>
<div onclick="check(this)">如果点击的是这里,改变这里的背景图</div>
<div onclick="check(this)">如果点击的是这里,改变这里的背景图</div>
<div onclick="check(this)">如果点击的是这里,改变这里的背景图</div>
<div onclick="check(this)">如果点击的是这里,改变这里的背景图</div>
</div>

解决方案 »

  1.   

    var nodeList=document.getElementBtId("test").getElementsByTagName("div");
    改成var nodeList=document.getElementById("test").getElementsByTagName("div");
    又敲错了,郁闷
      

  2.   

    其实可以不用FOR
     全局变量。  我觉得这样效率比较高
    var o= img=2的对象
    onclick的时候传this
    this.背景=2
    o=this;
     不知道LZ能不能明白我的意思
     
      

  3.   

    function changebg(obj){ 
    if(obj==1){ 
    var i
    for (i=1;i<n;i++)
    {
    document.getElementById("tid"+i).style.backgroundImage="url('images/barbg02'+i+'.jpg')"; }}
    }
      

  4.   

    function changebg(obj){ 
    if(obj==1){ 
    var i 
    for (i=1;i <n;i++) 

    document.getElementById("tid")(i).style.backgroundImage="url('images/barbg02.jpg')"; } }
    }
      

  5.   

    function changebg(obj){
    if(obj==1){
        for(var i=1; document.getElementById("tid"+i);i++){
            if( i == 1 )
                document.getElementById("tid"+i).style.backgroundImage="url('images/barbg02.jpg')";
            else
                document.getElementById("tid"+i).style.backgroundImage="url('images/barbg01.jpg')";
        }
    }