在Opera中更改body元素类

时间:2009-05-30 14:31:47

标签: javascript opera

我有这个脚本基本上打开和关闭bgColor类,以便在第一次按钮单击时背景变为黑色,然后在第二次单击时返回到默认的空类。我想弄清楚的是,为什么,在Opera 9.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>

感谢。

1 个答案:

答案 0 :(得分:1)

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

您可以在CSS中添加类似这样的内容,以强制Opera认为正文与视口的大小相同:

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