我正在制作一个网页,当这个页面调整大小时我想做一个功能 但它只适用于第一次而不适用于每次调整页面大小时 我的代码如下: 有什么建议吗?
<body onresize="myFunction()">
<script>
var width = window.innerWidth
|| document.documentElement.clientWidth
|| document.body.clientWidth;
function myFunction() {
if(width<500){
document.getElementById("yy").style.display="none";
}else{
document.getElementById("yy").style.display="absolute";
}
}
</script>
<img id="yy src="..."/>
最佳答案
如果您只想更改页面宽度小于 500 像素的元素的样式,您可以使用 css media query .媒体查询不适用于 IE8 及以下版本,因此请确保您不需要支持旧浏览器,在那种情况下您需要使用 javascript。
/* css rules for your example */
#yy {
display: absolute;
}
@media (max-width: 500px) {
/* this rules will apply only when screen width less than 500px */
#yy {
display: none;
}
}
编写起来更容易,维护起来也更容易。
关于javascript - 如何在js中多次使用resize,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35711606/