javascript - 在 JavaScript 中更改图像源

标签 javascript html image

我是 JavaScript 新手,我试图在每次点击时从第一次到第二次以及从第二次到第一次(无限期)交替显示图像。我试过这个:

function change() {

    var imgId = document.getElementById("image");

    var ubuntu = imgId.src="ubuntu.jpg";

    var debian = imgId.src="debian.jpg"

    if(imgId.src="ubuntu.jpg") {

        return debian;

    } else if(debian) {

        return ubuntu;
  
    }

}
<img id="image" src="ubuntu.jpg" width="160" height="120" onclick = "change()">
      

另外,我想知道代码将镜像从 ubuntu 更改为 debian 而不是从 debian 更改为 ubuntu 的原因。

最佳答案

您可以在 2 个图像之间切换 src,如下所示:

function change () {
    var imgElement = document.getElementById("image");

    if (imgElement.src === 'debian.jpg') {
        imgElement.src = 'ubuntu.jpg';
    }
    else {
        imgElement.src = 'debian.jpg';
    }
}

或者,使用 ternary operator :

function change () {
    var imgElement = document.getElementById("image");
    var src = imgElement.src;

    imgElement.src = src === 'debian.jpg' ? 'ubuntu.jpg' : 'debian.jpg';
}

关于javascript - 在 JavaScript 中更改图像源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30829554/

相关文章:

html - Div 高度不适用于动态内容 IE

python - 使用 Python 对图像进行 FFT

html - 真气缺口: How do you get rid of a gap between IMG and surrounding content

javascript - 函数调用之间 Angular 变量不会为 "unset"

javascript - jQuery 遍历。寻找包括自己在内的 sibling

javascript - 如何在 JavaScript 中访问从 Rails 4 Controller 发送的变量?

javascript - 你如何使用 html/angularjs 保存图像文件?

javascript - 有时,vue 路由器链接会刷新/重新加载页面。有时却没有

javascript - 抛硬币 HTML/Javascript

javascript - 如何使用 javascript 将表 th 转换为 li 并将 td 转换为 <p>?