JS监听浏览器缩放比例
JS监听浏览器缩放比例
应用场景:
- 可在切换浏览器不同百分比时显示不同样式
- 可在切换浏览器不同百分比时控制不同的dom操作
- 。。。。。。。
完整案例:
<template>
<div id="home">
<h2 :class="text">浏览器缩放比例:{{ ratio }}</h2>
</div>
</template>
<script>
export default {
name: "home",
data() {
return {
ratio: 100,
text: "text-class",
};
},
created() {
this.getWindowRatio();
},
mounted() {
window.addEventListener("resize", () => {
this.getWindowRatio();
});
},
components: {},
methods: {
getWindowRatio() {
let ratio = 0;
let screen = window.screen;
let ua = navigator.userAgent.toLowerCase();
if (window.devicePixelRatio !== undefined) {
ratio = window.devicePixelRatio;
} else if (~ua.indexOf("msie")) {
if (screen.deviceXDPI && screen.logicalXDPI) {
ratio = screen.deviceXDPI / screen.logicalXDPI;
}
} else if (
window.outerWidth !== undefined &&
window.innerWidth !== undefined
) {
ratio = window.outerWidth / window.innerWidth;
}
if (ratio) {
ratio = Math.round(ratio * 100);
}
switch (ratio) {
case 100:
this.text = "text-class";
break;
case 110:
this.text = "text-class2";
break;
case 125:
this.text = "text-class3";
break;
case 150:
this.text = "text-class4";
break;
}
this.ratio = ratio;
},
},
};
</script>
<style scoped>
.text-class {
color: red;
}
.text-class2 {
color: yellow;
}
.text-class3 {
color: blue;
}
.text-class4 {
color: green;
}
</style>
效果图:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)