项目用vue版本是2.0的,项目中用到es6
首先需要在data里面定义页面的高度
data (){ return { fullHeight: document.documentElement.clientHeight } }
把window.onresize事件挂在到mounted
mounted() { const that = this window.onresize = () => { return (() => { window.fullHeight = document.documentElement.clientHeight that.fullHeight = window.fullHeight })() } }
监听window.onresize事件
watch: { fullHeight (val) { if(!this.timer) { this.fullHeight = val this.timer = true let that = this setTimeout(function (){ that.timer = false },400) } } }
这里的定时器是为了优化,如果频繁调用window.onresize方法会造成页面卡顿,增加定时器会避免频繁调用window.onresize方法
以上这篇vue 监听屏幕高度的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。