图像源不变

时间:2013-12-05 00:53:31

标签: javascript

我有一个图像和一个按钮,我想要发生的是,当点击按钮时,图像的源被更改为另一个。每当我点击按钮时都没有发生任何事情。

我的图片代码是

<img id="chestImg" border="0" src="img/chestClosed.png" alt="Chest!">

我的按钮代码是

<button id="openChest" onclick='changeImage("chestImg","img/chest.gif");' > Open Chest! </button>

我的 changeImage 功能看起来像这样

function changeImage(obj,img) {
  obj.src = img;
}

4 个答案:

答案 0 :(得分:1)

obj不能像你拥有它一样的字符串,因为该字符串不是DOM图像对象,因此没有你想要的.src属性。

您可以将代码更改为:

function changeImage(id, url) {
   document.getElementById(id).src = url;
}

然后就像你拥有它一样被调用:

changeImage("chestImg", "img/chest.gif")

答案 1 :(得分:1)

您的JS函数不正确,您传递的是字符串“element id”并将其用作DOM元素,而不是。

所以你的功能应该是:

document.getElementById("[element id]").src = [new value];

希望这有帮助。

答案 2 :(得分:0)

    function changeImage(obj,img) {
       obj.src = img;
    }

“obj”不是对象,请想一想。“obj.src”不是对象的属性。 所以,你应该先得到这个对象:

var object = document.getElementById("chestImg").

然后:

object.src=[value];

答案 3 :(得分:0)

在changeImage函数中,您的参数不是对象。所以试试这个:

<img id="chestImg" border="0" src="img/chestClosed.png" alt="Chest!">
<button id="openChest" onclick='changeImage("chestImg","img/chest.gif");' > Open Chest! </button>

function changeImage(id,img) {
  var obj = document.getElementById(id);
  obj.src = img;
}
相关问题