Vue | 窗口大小变化时改变主内容盒子高度,可应用于footer固定

Posted 安照生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue | 窗口大小变化时改变主内容盒子高度,可应用于footer固定相关的知识,希望对你有一定的参考价值。

效果:

 

 

1.在html盒子绑定属性ref = "mainBox"

<el-container  ref="mainBox" >...</el-container>

 

2.在script中操作窗口高度

<script>
mounted() {
    let clientHeight1 =`${document.documentElement.clientHeight}`;  //获取页面可视窗口高度
    this.changeFixed(clientHeight1)//初始化主体高度

    window.onresize = () => { //窗口变化时监听,此处用箭头函数方便操作this
      let clientHeight2 = `${document.documentElement.clientHeight}`;
      if (clientHeight1 !== clientHeight2) {//对比高度,传值,并更改主体高度
        clientHeight1 = clientHeight2;
        this.changeFixed(clientHeight2);
      }
    };
  },
  
methods: {
  changeFixed(clientHeight){ //动态修改样式 
  this.$refs.mainBox.$el.style.height = clientHeight - 410 + \'px\';
}
</script>

多多指教~

 

以上是关于Vue | 窗口大小变化时改变主内容盒子高度,可应用于footer固定的主要内容,如果未能解决你的问题,请参考以下文章

CSS的盒子模型,怎么才能让盒子不会随着浏览器窗口的变化而移动或者改变大小

如何监听div内容的改变?

用JS或者jQuery可以监听浏览器窗口的变化吗

React 监听子元素dom内容高度变化

vue 监听窗口变化对页面部分元素重新渲染

Vue监听页面窗口改变,实现子页面高度数值更新