javascript - 在调整窗口大小时加载 JavaScript

标签 javascript window-resize

My page

为我的不同部分提供自己的高度,以便能够使它们相互重叠。我可以正常工作,但 javascript 仅在页面刷新时加载。

是否可以添加一些代码,以便我的代码在窗口大小实时变化时更新?

而且,我知道我区分三个不同面板的方式是一个快捷方式。是否可以编写代码,以便它自己计算每个单元,这样如果我想添加部分会更容易。

let div = document.querySelector(".panel-01")
        var height = document.querySelector(':root');
        height.style.setProperty('--height', div.clientHeight + "px");          

let div2 = document.querySelector(".panel-02")
        var height = document.querySelector(':root');
        height.style.setProperty('--height-2', div2.clientHeight + "px");          

let div3 = document.querySelector(".panel-03")
        var height = document.querySelector(':root');
        height.style.setProperty('--height-3', div3.clientHeight + "px");          
.panel-01 {
    top:calc(100vh - var(--height));
}

.panel-02 {
    top:calc(100vh - var(--height-2));
}

.pangel-03 {
    top:calc(100vh - var(--height-3));
}

最佳答案

您应该阅读 responsive概念一次。这个概念永远对您有用。

但是如果您想在调整窗口大小时执行任何操作,那么这段代码将会派上用场。 这样你就可以应用resize event到 window 。每当调整窗口大小时,它将运行给定的函数。

尝试调整窗口大小并查看结果

window.addEventListener('resize', function(event){
    var newWidth = window.innerWidth;
    var newHeight = window.innerHeight;
    
    // Your code.
    // Exmple :
    document.getElementById("size").innerHTML = `newWidth: ${newWidth} , newHeight: ${newHeight}`;
});
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <p id="size"></p>
    <script src="script.js"></script>
</body>
</html>

关于javascript - 在调整窗口大小时加载 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73690456/

相关文章:

Javascript 特殊字符匹配函数

javascript - 使用 jQuery 解析对象的 JSON 数组

windows - 如何在 Flutter Desktop Windows 上禁用窗口调整大小?

html - 居中固定宽度的页面内容

javascript - 如何在页面中尽可能大地显示整个图像(无滚动)保持其纵横比

javascript - 如何动态获取子串

javascript - 关闭和打开 jquery popUps 添加多个按钮

jquery - 在窗口调整 jquery 大小时删除/添加类

javaScript动态创建复选框并添加事件

jquery - 根据浏览器大小设置图像大小?