2

我有这个脚本,它基本上可以打开和关闭 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>

谢谢。

4

1 回答 1

1

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

你可以在你的 CSS 中添加这样的东西来强制 Opera 认为 body 确实和 viewport 一样大:

html {margin: 0; height: 100%}
body {margin: 0; height: 100%}
于 2009-05-30T14:50:51.967 回答