如何在点击时更改图像

时间:2014-06-09 14:12:18

标签: javascript image onclick

所以我想更改onClick上的图像并将其更改回oClick。 这是我目前的代码,但由于某种原因它不起作用。我不知道它有什么问题。

var newsrc = "suspects.png";
var newsrc = "questionmark.png";

function changeImage() {
  if ( newsrc == "suspects.png" ) {
    document.images["img"].src = "/images/suspects.png";
    document.images["img"].alt = "suspects";
    newsrc  = "questionmark.png";

  }; else {
    document.images["img"].src = "/images/questionmark.png";
    document.images["img"].alt = "questionmark";
    newsrc  = "suspects.png";
  };
};

我很确定这样的好......为什么它不起作用?

2 个答案:

答案 0 :(得分:0)

删除代码中的额外分号;

应该是

function changeImage() {

      if ( newsrc == "suspects.png" ) {
        document.images["img"].src = "/images/suspects.png";
        document.images["img"].alt = "suspects";
        newsrc  = "questionmark.png";

      } else {
        document.images["img"].src = "/images/questionmark.png";
        document.images["img"].alt = "questionmark";
        newsrc  = "suspects.png";
      }
    }

答案 1 :(得分:0)

仅切换图像检查来源

function toggle(){
 var img=document.getElementById('img');
 img.src=img.src=='url1'?'url2':'url1';// needs to be the full url.
}

关于您的代码:

你定义newsrc 2次,所以第一次丢失。newsrc总是" questionmark.png"

}; else{

应该是

}else{

如果您设置了suspects,那么您需要点击questionmark,而不是suspects。所以反转if内容。

应该是

  

如果嫌疑人那么其他问题嫌疑人

你有

  

如果嫌疑人随后怀疑是其他问号。

<强>样本

http://jsfiddle.net/SLkHu/