怎么有两个  l() 函数? 把其中一个改名墙失效的问题  这样 alert(document.getElementById(a + "_" + b).style.backgroundImage); 看下你就明白了

解决方案 »

  1.   

    backgroundImage在读取时不一定是你设置时的那个字符串。
    比如有的浏览器会为地址加上引号,有的浏览器会把相对地址自动变成绝对地址
    运行下面看看
    <div id="aa"></div>
    <script type="text/javascript">
    var str = "url(img/qiang.png)";
    document.getElementById("aa").style.backgroundImage = str; 
    alert(str +"\n"+ document.getElementById("aa").style.backgroundImage);
    </script>
      

  2.   

    你的代码
    return document.getElementById(a + "_" + b).style.backgroundImage != "url(img/qiang.png)";
    改成
    return document.getElementById(a + "_" + b).style.backgroundImage.indexOf("qiang.png")==-1;