2

我有一个非常简单的 Javascript 代码。该代码是在页面加载时更改图像的来源。它是这样的:

window.onload = initAll;
function initAll(){
    document.getElementById("imgSlider").src = "menuBack.jpg";
}

现在,这工作得很好。看看下面的代码。

window.onload = initAll;
function initAll(){
     var imgSrc = document.getElementById("imgSlider").src
     imgSrc = "menuBack.jpg";

}

这段代码不应该像上面的代码那样执行吗?我想,应该的。下面的代码有问题吗?我使用 Mozilla Firefox(最新版本)。这可能是浏览器的问题吗?

4

3 回答 3

3

喜欢

var imgSrc = document.getElementById("imgSlider");
imgSrc.src = "menuBack.jpg";

您应该在变量中包含 dom 元素以将值应用于其属性。其他方式你只是有一个不是 dom 元素的字符串。

于 2013-05-11T09:39:44.827 回答
3

第二段代码肯定应该做其他事情。

第一部分:

document.getElementById("imgSlider").src = "menuBack.jpg";

意味着您将字符串存储"menuBack.jpg"document.getElementById("imgSlider").src.

但是,第二部分:

 var imgSrc = document.getElementById("imgSlider").src
 imgSrc = "menuBack.jpg";

意味着您首先存储document.getElementById("imgSlider").srcimgSrc中,然后通过存储"menuBack.jpg"到中覆盖它imgSrc。那是不同的东西。

于 2013-05-11T09:42:58.727 回答
2
window.onload = initAll;
function initAll(){
     var img = document.getElementById("imgSlider");
     img.src = "menuBack.jpg";
}
于 2013-05-11T09:41:19.000 回答