首页  >  问答  >  正文

如何通过点击来改变按钮的背景颜色/HTML

我制作了一个类似于“阅读更多”的按钮,当我按下它时,一个文本向下展开。当文本展开时,按钮的背景将改变,当我再次按下按钮关闭文本(例如“阅读更少”),按钮的背景将恢复到原始状态。如何实现这个功能

function myFunction() {
        var dots = document.getElementById("dots");
        var moreText = document.getElementById("more");
        var btnText = document.getElementsByClassName("skillBtn");
      
        if (dots.style.display === "none") {
          dots.style.display = "inline";
          btnText.innerHTML = "阅读更多";
          moreText.style.display = "none";
        } else {
          dots.style.display = "none";
          btnText.innerHTML = "阅读更少";
          moreText.style.display = "inline";
        }
      }
#more {display: none;}
<div align="center"><h1 id="skillsid" style="margin-top:10px ;"> 编程语言 <span id="dots"></span> </h1><span id="more">
    这里写了一些内容
    
    <div align="center"><a href="#skillsid"><button class="skillBtn" onclick="myFunction()" ></button></a></div>

P粉502608799P粉502608799407 天前476

全部回复(1)我来回复

  • P粉348088995

    P粉3480889952023-09-08 19:23:31

    你正在尝试做的是叫做手风琴。没有必要使用JS来编写,因为HTML中已经有<details><summary>来实现这个功能:

    #more {
      display: none;
    }
    <details>
      <summary>编程语言</summary>
      这里写了一些内容
    </details>

    回复
    0
  • 取消回复