所以我有一个生成十六进制代码的脚本,并更改背景。这是代码
$(document).ready(function() {
$(document).keydown(function(e) {
if (e.keyCode == '32') {
var color = "#" + Math.random().toString(16).slice(2, 8);
document.write(color);
document.body.style.backgroundColor = color;
}
});
});
问题是,当我按空格键时,它只会改变颜色一次,并且我无法再次按空格键以生成另一种颜色而无需重新加载页面。 Here's一个演示。有任何想法吗?
答案 0 :(得分:3)
请勿使用document.write
。
它将擦除您的脚本,因此您应该将其附加到正文中:
$(document.body).append(color);
document.body.style.backgroundColor = color;
或添加范围并设置其文字:
$("span").text(color);
答案 1 :(得分:0)
$(document).ready(function(){
$('body').on('keydown',function(e) {
if (e.which == '32') {
var color = "#" + Math.random().toString(16).slice(2, 8);
$('body').css('background',color);
}
});
});