You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript点击按钮切换显示图片功能失效,求排查问题

问题排查与修正

你的代码存在三个关键错误,导致图片切换功能失效,逐个修正即可解决:

  • 图片元素缺少ID:通过document.createElement创建的img元素未设置id="img",但imageChange函数里用document.getElementById("img")查找它,自然无法定位到目标元素。
  • 事件监听传参方式错误:btn.addEventListener("click", imageChange("p2.jpg")) 这种写法会在页面加载时直接执行imageChange函数,而非点击按钮时触发。需要用匿名函数包裹,确保点击动作触发函数执行。
  • 语法错误:btn.addEventListener语句末尾缺少闭合括号,会导致JavaScript解析失败。

修正后的完整代码:

// display original image
var img = document.createElement("img");
img.src = "p1.jpg";
img.width = 270;
img.height = 300;
img.id = "img"; // 给图片添加id
document.body.appendChild(img);

// add a button to change the displayed image
var btn = document.createElement('button')
btn.innerText = "change displayed image"
// 用匿名函数包裹,点击时才执行imageChange
btn.addEventListener("click", function() {
    imageChange("p2.jpg");
}); // 补上闭合括号
document.body.appendChild(btn)

// define functions
function imageChange(src){
    document.getElementById("img").src = src;
}

内容的提问来源于stack exchange,提问作者Chelsea

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 12:15:25