春水漫煎茶 2022-06-18 17:33 采纳率: 50%
浏览 38
已结题

增添一个点击取消背景色的功能

问题遇到的现象和发生背景

想添加一个功能 将已变背景色的按钮被点击时能取消背景色

问题相关代码,请勿粘贴截图
<!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>
        .bg1{background: aquamarine;}
        .bg2{background: red;}
    </style>
</head>
<body>
    <button class="bg1">第1个</button><button>第2个</button><button>第3个</button><button>第4个</button><button>第5个</button>
    <script>
        let btn = document.querySelectorAll('button')
        for(let i = 0;i<btn.length;i++){
            btn[i].addEventListener('click',function(){
                document.querySelector('.bg1').classList.remove('bg1')
                btn[i].classList.add('bg1')
            })
                    
        }
        
        
        
        
        
    </script>
</body>
</html>

运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

1条回答 默认 最新

  • 你好!机器人 2022-06-18 21:33
    关注
    
    <!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>
            .bg1{background: aquamarine;}
            .bg2{background: red;}
        </style>
    </head>
    <body>
        <button class="bg1">第1个</button><button>第2个</button><button>第3个</button><button>第4个</button><button>第5个</button>
        <script>
            let btn = document.querySelectorAll('button')
            let index = 0
            for(let i = 0;i<btn.length;i++){
                btn[i].addEventListener('click',function(){
                    if(index === i){
                        if(btn[i].className){
                            document.querySelector('.bg1').classList.remove('bg1')
                            console.log(1)
                        }else{
                            btn[i].classList.add('bg1')
                            console.log(2)
                        }
                    }else{
                        index = i
                        if(document.querySelector('.bg1')){
                            document.querySelector('.bg1').classList.remove('bg1')
                        }
                        btn[i].classList.add('bg1')
                    }
                })
            }
        </script>
    </body>
    </html>
     
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月26日
  • 已采纳回答 6月18日
  • 创建了问题 6月18日

悬赏问题

  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 AT89C51控制8位八段数码管显示时钟。
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 下图接收小电路,谁知道原理
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题