我有这个脚本,它基本上可以打开和关闭 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>
谢谢。
最佳答案
似乎存在渲染问题,因为当您调整 Opera 的大小时(强制它重新绘制)然后所有背景都会按预期显示为白色。
你可以在你的 CSS 中添加这样的东西来强制 Opera 认为 body 确实与视口(viewport)大小相同:
html {margin: 0; height: 100%}
body {margin: 0; height: 100%}
关于javascript - 在 Opera 中更改正文元素类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/929813/