我正在处理我正在处理的图像交换脚本的问题。它在Chrome和IE 8中运行得很漂亮,但在Firefox中我得到了IMG1 Not Defined。我尝试过使用var image1 = document.getElementById("IMG1")
,但后来我得到的image1为NULL。任何有关这方面的帮助将不胜感激。这是我的代码和标记。
<script type="text/javascript">
function imgSwap() {
IMG1.src = "/images/stories/clubpics_on.png";
IMG2.src = "/images/stories/facebook_off.png";
return(false);
}
function imgSwap2() {
IMG1.src = "/images/stories/clubpics_off.png";
IMG2.src = "/images/stories/facebook_on.png";
return(false);
}
</script>
<img src="/images/stories/clubpics_on.png" name="IMG1" id="IMG1" class="IMG1" style="position:absolute; left:-19px; width:165px" value="IMG1" onclick="imgSwap();"/ >
<img src="/images/stories/facebook_off.png" class="IMG2" value="IMG2" name="IMG2" id="IMG2" style="position:relative; left:123px; width:165px" onclick="imgSwap2();" />
答案 0 :(得分:3)
Firefox不会自动创建对具有“id”值的元素的全局引用。请改用document.getElementById("IMG1")
。
如果您尝试使用变量“image1”外部两个函数的赋值语句,则变量将为null
,因为该代码将在之前运行元素被添加到DOM中。如果您将代码放在函数中,它将起作用。