我正在尝试更改具有相同 id 的每个 div 元素的背景颜色,该 id 等于某些特定文本。下面的代码仅适用于我代码中的第一个 div。我如何将它应用于每个具有相同 id 和内部特定文本的 div。
好的。我知道 Id 需要是唯一的。你能帮我在类里面做到这一点吗?
<!DOCTYPE html>
<html>
<head>
<style>
</style>
</head>
<body>
<div id="myDIV">
Hello
</div>
<div id="myDIV">
Hello
</div>
<script>
if (document.getElementById('myDIV').innerHTML.indexOf("Hello") != -1) {
document.getElementById('myDIV').style.backgroundColor='blue';
}
</script>
</body>
</html>
最佳答案
是的,id 必须是唯一的。
var targets = document.getElementsByClassName('myDIV');
for( var i in targets ) {
if (targets[i].innerHTML.indexOf("Hello") != -1) {
targets[i].className='myDIV blue';
}
};
然后在样式中添加颜色:
.blue { background-color: blue; }
这是一个 fiddle : https://jsfiddle.net/mckinleymedia/5nj7yw2e/1/
关于javascript - 更改具有相同 id 的每个 div 元素的颜色,该 id 等于一些文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33717883/