javascript - 再次点击后,点击的图片不会回到上一张图片

标签 javascript html css

HTML 代码:

<img src="images/assets/plus.png"  alt="Earth" id="pic" class="portrait" onclick="changeImage()" />

Javascript:

 var newsrc = "minus.png";

 function changeImage() {
    if (newsrc == "minus.png") {
        document.images["pic"].src = "images/assets/minus.png";
        document.images["pic"].alt = "minus";
        newsrc = "minus.png";
    } else {
        document.images["pic"].src = "images/assets/plus.png";
        document.images["pic"].alt = "plus";
        newsrc = "plus.png";
    }
 }

我正在使用这些代码来更改图像 onclick。现在我希望当我再次单击减号图像时它会再次返回加号图像。我该怎么做?

最佳答案

如果minus.png然后设置为minus.png ?否则永远不会执行。如果不是减号,则应为减号,否则为加号。更改 ==!= .如果你想要id为“pic”的图片,你应该使用getElementById() .

编辑:

对于多个图像,请使用以下内容并更改 id="pic"class="pic"<img> :

function changeImage() {
    if (newsrc != "minus.png") {
     for(var i = 0; i<document.getElementsByClassName("pic").length; i++) {
        document.getElementsByClassName("pic")[i].src = "images/assets/minus.png";
        document.getElementsByClassName("pic")[i].alt = "minus";
     }
        newsrc = "minus.png";
    } else {
     for(var i = 0; i<document.getElementsByClassName("pic").length; i++) {
        document.getElementsByClassName("pic")[i].src = "images/assets/plus.png";
        document.getElementsByClassName("pic")[i].alt = "plus";
     }
        newsrc = "plus.png";
    }

关于javascript - 再次点击后,点击的图片不会回到上一张图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23722449/

相关文章:

javascript - React - 无法以编程方式从输入文本元素调度 onChange 事件

javascript - 根据网络带宽自动选择合适的视频质量?

javascript - setTimeout 不断触发

javascript - Flowplayer 中的 MP4 视频无法在 Windows 7 Chrome 中播放

javascript - Object.create 从一个对象

css - 为什么我的 font awesome 不适用于子主题而是插件?

css - Angular 动画根本不起作用

html - CSS:为什么 Chrome 和 Firefox 中的颜色代码 #999 色调不同?

javascript - 我可以使用 JS 使符号可拖动吗?

javascript - 无法从 apollo-server-express 获取功能