使用 Javascript 更改 CSS 中元素的背景颜色
Changing background-color of an element in CSS using Javascript
基本上,我想通过单击按钮来更改CSS中JavaScript元素的背景颜色。
到目前为止,我的CSS看起来像这样:
div.box {
width:100px;
height:100px;
background-color:#FF2400;
}
它需要动态更改为几种颜色的选择,只需使用多个按钮即可(每个按钮都是不同的颜色)。
完成:http://jsfiddle.net/iambriansreed/zmtU4/
更新为非jQuery。
.HTML
<div id="box"></div><div id="box"></div>
<button type="button" onclick="button_click('red');">Red</button>
<button type="button" onclick="button_click('blue');">Blue</button>
<button type="button" onclick="button_click('green');">Green</button>
<button type="button" onclick="button_click('yellow');">Yellow</button>
<button type="button" onclick="button_click('purple');">Purple</button>
纯JavaScript
function button_click(color){
document.getElementById("box").style.backgroundColor=color;
}
vanilla-javascript 的方法是获取对元素的引用并使用 style.backgroundColor
来更改颜色:
例如,如果div 的 ID 为 myBox
则使用
document.getElementById("myBox").style.backgroundColor="#000000"; // change to black
现场示例:http://jsfiddle.net/QWgcp/
顺便说一下,如果你正在做很多这样的操作框架,比如jQuery,为你编写代码提供了一些帮助。使用jQuery的相同功能会更简单一些:
$('#myBox').css('background-color','#000000');
我是否正确理解您不想更改单个元素,而是更改 CSS 规则,因此所有匹配的元素都会受到影响?下面是如何将示例中的样式动态更改为蓝色的示例:
<html>
<head>
<style>
div.box{
width:100px;
height:100px;
background-color:#FF2400;
}
</style>
<script>
var sheet = document.styleSheets[0] // Of course if you have more than one sheet you'll have to find it among others somehow
var rulesList = sheet.cssRules || sheet.rules // some older browsers have it that way
var rule = rulesList[0] // same for rules - more than one and you'll have to iterate to find what you need
rule.style.backgroundColor = 'blue' // and voila - both boxes are now blue
</script>
</head>
<body>
<div class="box"></div>
<div class="box"></div>
</body>
</html>
只需将此部分作为"单击"事件处理程序分配给按钮即可设置。
相关文章:
- 使用JS如何动态更改显示的html文件中的文本背景颜色
- 如何使用jquery更改html中的背景颜色
- Javascript对象类在单击时打开窗口进行颜色选择,并在更改时替换对象背景颜色
- JS幻灯片与CSS背景颜色变化
- DT数据表背景颜色为黑色,但仍有悬停和选择颜色
- Javascript通过列表项的函数和css来更改背景颜色
- Javascript没有从数组中选择背景颜色
- 使用圆中的数组更改背景颜色项目
- 如何用jquery动画改变背景颜色,就像一个过渡
- 使用jquery交换并保存背景颜色
- j查询如何设置/取消设置下拉菜单的背景颜色
- 使用angularjs根据时间更改背景颜色
- 设置Dojo量表的背景颜色
- javascript样式的背景颜色在设置时闪烁.ASP.NET
- 使用javascript更改任意文本的背景颜色
- 在用Javascript更改背景颜色后:hover don'不要改变颜色
- 图像内部的透明背景颜色不受影响
- jQuery mobile-动态更改ui页面背景颜色
- 切换按钮的背景颜色
- JavaScript更改类的背景颜色