开发者问题收集

使用 javascript 更改图像的 src

2018-12-30
82

我一直在尝试使用以下代码来更改图像的 src

document.getElementById('test').src='images/test2.png';

我的代码如下所示。其中有一些 CSS 和其他内容,但重要的部分是 div、img 和函数。

<div id='splashScreen' class='splash'>
  <button class='bigButton' onclick='introSplash()'>Hi</button>
  <img class='splashImages' src='images/splashScreen1.png'>
</div>

这是我的图像,其顶部有一个页面大小的透明按钮

<script>
function introSplash() {
    document.getElementById('splashImages').src='images/splashScreen2.png';
  }
</script>

此函数应替换按钮下方的图像。

使用此代码按下按钮会返回以下错误消息:

未捕获的 TypeError:无法在 introSplash 中设置 null 的属性“src”

所有图像均已本地保存并以这些名称存在

我不确定为什么会发生这种情况,并希望得到任何帮助。

3个回答

您需要将 ID test 添加到 <img> 元素:

<img id='test' class='splashImages' src='images/splashScreen1.png' />

现在您的代码就可以正常工作了。

另一种方法是使用 document.getElementsByClassName ,如下所示:

document.getElementsByClassName('splashImages')[0].src='images/test2.png';
Jack Bashford
2018-12-30

请确认您使用的是 document.getElementById('splashImages') ,但 html 元素没有 ID。添加 id 属性

<img id="splashImages" class='splashImages' src='images/splashScreen1.png'>

请尝试此操作并让我知道效果如何 :)

Manuel Eduardo Romero
2018-12-30

您尝试通过 id 获取元素,但仅给出了 class="splashImages"

Tyr
2018-12-30