我有一个非常简单的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(最新版本)。这可能是浏览器的问题吗?
答案 0 :(得分:3)
喜欢
var imgSrc = document.getElementById("imgSlider");
imgSrc.src = "menuBack.jpg";
您应该在变量中使用dom元素将值应用于其属性。其他方式你只有一个不是dom元素的字符串。
答案 1 :(得分: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").src
存储到imgSrc
,然后将"menuBack.jpg"
存储到imgSrc
中,以覆盖该{{1}}。
这是不同的。
答案 2 :(得分:2)
window.onload = initAll;
function initAll(){
var img = document.getElementById("imgSlider");
img.src = "menuBack.jpg";
}