javascript - 如何在js中多次使用resize

标签 javascript

我正在制作一个网页,当这个页面调整大小时我想做一个功能 但它只适用于第一次而不适用于每次调整页面大小时 我的代码如下: 有什么建议吗?

<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/

相关文章:

javascript - phonegap 的 childBrowser.jar 插件在 : settings. setPluginState(true) 中抛出错误;

javascript - 使用 Angular js 进行页面重定向的有效方法

javascript - 我可以使用 jQuery Submit 提交 Razor 表单数据吗

javascript - 向 jquery 宝丽来画廊添加缩放功能

javascript - 需要组合数组元素以匹配打印到表格单元格中所需的 id

JavaScript onclick 事件不起作用

javascript - Foundation.MediaQuery.current 在一个循环中(第一次迭代总是什么都不显示,下一次总是正确的)

javascript - Bootstrap 切换 V 形

javascript - jsx 文件映射错误 : Unable to generate source map (ReactJS)

javascript - 表单提交问题(第一次页面加载错误)