我一直在尝试将 div 的颜色更改为随机生成的十六进制颜色代码,并将其传递给变量。我怎样才能做到这一点?
HTML
<p id="demo">NULL</p>
<button onclick="generatePassword()">Generate</button>
<div id="showcase" style="background: #FFFFFF; width: 200px; height: 200px; margin: 20px; border-radius: 3px;"></div>
JavaScript
var result = document.getElementById('demo').innerHTML;
function generatePassword() {
var length = 6,
charset = "ABCDEF0123456789",
retVal = "";
for (var i = 0, n = charset.length; i < length; ++i) {
retVal += charset.charAt(Math.floor(Math.random() * n));
}
document.getElementById('demo').innerHTML = "#" + retVal;
return document.getElementById('showcase').style.backgroundColor = retVal;
}
最佳答案
你已经差不多明白了,修复方法如下:https://jsfiddle.net/yL1uu6bz/1/
var result = document.getElementById('demo').innerHTML;
function generatePassword() {
var length = 6,
charset = "ABCDEF0123456789",
retVal = "";
for (var i = 0, n = charset.length; i < length; ++i) {
retVal += charset.charAt(Math.floor(Math.random() * n));
}
var finalVal = "#" + retVal;
document.getElementById('demo').innerHTML = finalVal;
return document.getElementById('showcase').style.backgroundColor = finalVal;
}
我只是添加了哈希符号,并以与输出值相同的方式附加它 ("#"+ retVal
),我将其添加到变量中 ( FinalVal
)并输出它。
关于javascript - 使用 Javascript 将 Div 的背景颜色更改为变量的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35413553/