将元素样式更改为 window 高度 JavaScript
Change Element style with window height with JavaScript
我正在尝试使用 JavaScript 在页面 window 高度低于特定值时更改 div 元素的背景颜色。我对这可能如何工作有一个模糊的想法,但它似乎没有任何效果。
这是在一个标签内,并在我的 HTML.
正文之后加载
<script>
var footer = document.getElementByClassName("footer");
if (window.innerHeight < 800) {
footer.style.backgroundColor = 'black';
}
</script>
就像已经提到的 getElementsByClassName
returns 一个数组。您在那里输入错误,因此没有返回任何内容。
只要只有 1 个元素具有 class 名称 "footer" 这应该有效(使用 ID 可能更好):
<script>
var footer = document.getElementsByClassName("footer")[0];
if (window.innerHeight < 800) {
footer.style.backgroundColor = 'black';
}
</script>
但是,是的,您在编写 Javascript 时真的应该看看开发控制台。它可以省去很多麻烦!
JavaScript 没有名为 getElementByClassName
的方法。
最接近的是 getElementsByClassName
,其中 returns 是一个 HTMLCollection
,它是一个类似数组的对象,因此要获取列表中的第一个元素,您可以使用索引:
var footer = document.getElementsByClassName('footer')[0];
您还可以使用 querySelector
获取名称为 class 的第一个元素:
var footer = document.querySelector('.footer');
这是一个工作示例:
var footer = document.getElementsByClassName('footer')[0];
window.onresize = function (event) {
if (window.innerHeight < 800) {
footer.style.backgroundColor = 'black';
} else {
footer.style.backgroundColor = 'blue';
}
}
.footer {
height: 50px;
width: 100%;
background: black;
}
<footer class="footer"></footer>
JSFiddle 演示 http://jsfiddle.net/moogs/x63rc6v4/1/
我正在尝试使用 JavaScript 在页面 window 高度低于特定值时更改 div 元素的背景颜色。我对这可能如何工作有一个模糊的想法,但它似乎没有任何效果。 这是在一个标签内,并在我的 HTML.
正文之后加载<script>
var footer = document.getElementByClassName("footer");
if (window.innerHeight < 800) {
footer.style.backgroundColor = 'black';
}
</script>
就像已经提到的 getElementsByClassName
returns 一个数组。您在那里输入错误,因此没有返回任何内容。
只要只有 1 个元素具有 class 名称 "footer" 这应该有效(使用 ID 可能更好):
<script>
var footer = document.getElementsByClassName("footer")[0];
if (window.innerHeight < 800) {
footer.style.backgroundColor = 'black';
}
</script>
但是,是的,您在编写 Javascript 时真的应该看看开发控制台。它可以省去很多麻烦!
JavaScript 没有名为 getElementByClassName
的方法。
最接近的是 getElementsByClassName
,其中 returns 是一个 HTMLCollection
,它是一个类似数组的对象,因此要获取列表中的第一个元素,您可以使用索引:
var footer = document.getElementsByClassName('footer')[0];
您还可以使用 querySelector
获取名称为 class 的第一个元素:
var footer = document.querySelector('.footer');
这是一个工作示例:
var footer = document.getElementsByClassName('footer')[0];
window.onresize = function (event) {
if (window.innerHeight < 800) {
footer.style.backgroundColor = 'black';
} else {
footer.style.backgroundColor = 'blue';
}
}
.footer {
height: 50px;
width: 100%;
background: black;
}
<footer class="footer"></footer>
JSFiddle 演示 http://jsfiddle.net/moogs/x63rc6v4/1/