Javascript 歌剧中身体元素类的变化

Javascript 歌剧中身体元素类的变化,javascript,opera,Javascript,Opera,我有一个脚本,它基本上可以打开和关闭bgColor类,这样背景在第一次单击按钮时变为黑色,然后在第二次单击时返回默认的空类。我想弄明白的是,为什么在Opera9.64中,在第三次点击按钮时,背景会保持黑色,只有按钮周围的背景会改变颜色 <style> .bgColor {background-color: #000000} </style> <button id="button">Change Class</button> <script

我有一个脚本,它基本上可以打开和关闭bgColor类,这样背景在第一次单击按钮时变为黑色,然后在第二次单击时返回默认的空类。我想弄明白的是,为什么在Opera9.64中,在第三次点击按钮时,背景会保持黑色,只有按钮周围的背景会改变颜色

<style>
.bgColor {background-color: #000000}
</style>

<button id="button">Change Class</button>

<script>
function changeBodyClass() {
    var body = document.body;
    if (body.className === "bgColor") {
        body.className = "";
    } else {
        body.className = "bgColor";
    }
}

document.getElementById("button").onclick = changeBodyClass;
</script>

.bgColor{背景色:#000000}
换班
函数changeBodyClass(){
var body=document.body;
if(body.className==“bgColor”){
body.className=“”;
}否则{
body.className=“bgColor”;
}
}
document.getElementById(“按钮”).onclick=changeBodyClass;

谢谢。

似乎存在渲染问题,因为当您调整Opera的大小(强制其重新绘制)时,所有背景都将按预期显示为白色

您可以在CSS中添加类似的内容,迫使Opera认为主体确实与视口大小相同:

html {margin: 0; height: 100%}
body {margin: 0; height: 100%}