单击按钮更改背景颜色

Change background color with button click

本文关键字:背景 颜色 按钮 单击      更新时间:2023-09-26

我想用JavaScript按钮点击按钮更改多个div背景:

JS:

function button_click(color) {
     document.getElementById("box").style.backgroundColor = color;
     document.getElementById("box1").style.backgroundColor = color;
}

CSS:

div#box {
    width: 100px;
    height: 100px;
    background-color: #000;
}
div#box1 {
    width: 100px;
    height: 100px;
    background-color: #000;
}

HTML:

<div id="box">Hey there</div>
<div id="box1">Hey there</div>
<button type="button" onclick="button_click('red');">Switch</button>

哦,我想用这个按钮来改变背景颜色在4个div中,隐藏和取消隐藏3个div,也许还有其他一些垃圾这只是我实际项目中的一段代码项目我正在使用Bootstrap,但我不知道它是否有什么可以帮我处理这个特殊的

您可以为应该更改颜色的按钮提供标识符,例如:

<button type="button" id="change-color">Switch colors</button>

给出要更改全局class的div,并使用data属性指定color,例如:

<div id="box" class='color-div' data-color='red'>Hey there red</div>
<div id="box1" class='color-div' data-color='green'>Hey there green</div>
<div id="box2" class='color-div' data-color='blue'>Hey there blue</div>

并将click事件分配给按钮,该按钮将遍历所有div并在数据中为每个指定的颜色:

$('body').on('click', '.change-color', function(){
    var color = $(this).data('color');
    $('.global-class-'+color).css('background-color', color);
})

希望这能有所帮助。


代码段

$('body').on('click', '#change-color', function(){
    $('.color-div').each(function(){
    	$(this).css('background-color', $(this).data('color'));
    })
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button type="button" id="change-color">Switch colors</button>
<div id="box" class='color-div' data-color='red'>Hey there red</div>
<div id="box1" class='color-div' data-color='green'>Hey there green</div>
<div id="box2" class='color-div' data-color='blue'>Hey there blue</div>