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

点击按钮时无法同时显示GIF动图与文本,如何修正现有代码?

问题原因

  • 方法名拼写错误:你使用的getElementByClassName不存在,正确API名称为getElementsByClassName(注意Element为复数形式,末尾加s)
  • getElementsByClassName返回的是匹配类名的元素集合(类数组结构),无法直接操作style属性,需要通过索引取出具体的DOM元素再修改样式。

修正后的核心JS代码

function displayRoutine() {
  // 取集合中第一个匹配的元素修改样式
  document.getElementsByClassName('results')[0].style.display = 'block';
  document.getElementsByClassName('loading')[0].style.display = 'block';
  alert('me');
}

完整可运行代码

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <style>
    .results,
    .loading {
      display: none;
    }
  </style>
</head>
<body>
  <div class="container" style="margin-left:35%; margin-top:20%;">
    <button class="btn" onclick="displayRoutine()">点击查看我的晨间日常</button>
    <div class="loading">
      <img src="-here is a GIF link" alt="晨间日常动图">
    </div>
    <div class="results">
      <div class="me">
        <p style="margin-left:50px;">这就是我起床的样子!!!</p>
      </div>
    </div>
  </div>
  <script>
    function displayRoutine() {
      document.getElementsByClassName('results')[0].style.display = 'block';
      document.getElementsByClassName('loading')[0].style.display = 'block';
      alert('me');
    }
  </script>
</body>
</html>

内容的提问来源于stack exchange,提问作者Raluca Adina Avram

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 21:39:03