日期:2014-05-16  浏览次数:20359 次

javascript中修改src时产生的一个不良效果
先贴代码
html中
  <ul id="tree">
        <li>
            <a href="javascript:void(0)" onclick="switchShow(this);return false">
               <img id="1" src='${ctx}/img/cd.gif' width='10px' height='10px'/>
            </a>
            <span>第一个</span>
            <ul>
                <li>一号子第一个</li>
                <li>一号子第二个</li>
                <li>一号子第三个</li>
                <li>一号子第四个</li>
            </ul>
        </li></ul>

js的代码
function switchShow(node){
var paeNode = node.parentNode;
if(paeNode.lastChild.style.display == "none"){
node.firstChild.src = "${ctx}/img/cd.gif";
paeNode.lastChild.style.display = "inline";
}else{
node.firstChild.src = "${ctx}/img/close.gif";
paeNode.lastChild.style.display = "none";
}
}
本来预期的效果就是点一下,图片变一下,可他没有执行,在页面初始化的时候用过
nodes[i].firstChild.firstChild.src="${ctx}/img/close.gif";
这里是可以运行的,点击就出不了效果了,求大神解释
src javascript ul

------解决方案--------------------
你看看报什么错没  你的lastChild和firstChild在不同浏览器获得的也未必是同一个元素  又得把空白页当一个元素对待了