我有 8 个 li 标签.. 当我输入名称时,我希望每个 li 标签为绿色.. 但我无法创建组合.. 例如,当我输入我的名字时,一个 li 标签将为绿色..我如何创建组合?
<style>
.color {
background: green;
}
ul {
list-style: none;
}
li{
width: 100px;
height: 100px;
background: gray;
}
</style>
<div id="goster">
<ul>
<li id="item"></li>
<li id="item"></li>
<li id="item"></li>
<li id="item"></li>
<li id="item"></li>
<li id="item"></li>
<li id="item"></li>
<li id="item"></li>
</ul>
</div>
<script>
var name = prompt("Enter your name:", ""),
li = 8,
item="";
while(++i < li){
var item=document.getElementsByTagName("li")[i].setAttribute("class", "color");
document.getElementById("goster").innerHTML=name[item];
}
</script>
只有我需要它,或者你能给我任何提示..我循环尝试但它不起作用..颜色应该是每个输入名称随机的..
最佳答案
不清楚您真正在寻找什么。
您想将 .color 类添加到提示后的每个 li 中吗?
var name = prompt("Enter your name:", "");
var items = document.getElementsByTagName("li");
for(let i = 0; i < items.length; i++) {
let item = items[i];
if(item.className.indexOf('color') < 0) {
item.className += 'color';
item.textContent = name;
break;
}
}
.color {
background: green;
}
ul {
list-style: none;
}
li {
width: 100px;
height: 100px;
background: gray;
}
<div id="goster">
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</div>
关于javascript - 如何在组合中创建代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38368516/