vue3动态监听浏览器窗口变化实例
定义一个属性记录宽度
const screenWidth = ref(window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth)
在 vue mounted 的时候 去挂载一下 window.onresize 方法
onMounted(() => {
window.onresize = () => {
return (() => {
screenWidth.value = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth
})()
}
})去监听这个 属性值的变化,如果发生变化则讲这个 val 传递给 this.screenWidth
watch(() => screenWidth, (val) => {
screenWidth.value = val
})这样screenWidth就跟随浏览器的窗口大小动态变化了
进行使用
const programHaplomultiple = computed(() => {
return (screenWidth.value * 0.52) / infoContent.value.width / 320
})附:vue3监听窗口变化来进行页面操作
当需要监听窗口的宽度变化来对页面进行dom隐藏或修改时,操作如下
onMounted(()=>{
//监听窗口变化
window.onresize=()=>{
return(()=>{
window.screenWidth=document.body.clientWidth;
viewWidth.value=window.screenWidth;
})();
};
});
//视口宽度
const vieWith=ref(document.documentElement.clientWidth||document.body.clientWidth);视口宽度就可以获取到了,直接用vieWith的值就可以来判断dom的隐藏或修改啦
总结
到此这篇关于vue3动态监听浏览器窗口变化的文章就介绍到这了,更多相关vue3动态监听浏览器窗口内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
vue之使用echarts图表setOption多次很卡问题及解决
这篇文章主要介绍了vue之使用echarts图表setOption多次很卡问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-07-07
Vue3 Axios拦截器封装成request文件的示例详解
这篇文章主要介绍了Vue3 Axios拦截器封装成request文件,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2023-04-04
vue el-switch初始值(默认值)不能正确显示状态问题及解决
这篇文章主要介绍了vue el-switch初始值(默认值)不能正确显示状态问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-10-10


最新评论