vue 动态的设置页面的高和宽,适配浏览器的缩放比

1 获取网页的缩放比

export default {
  components: { leftview, betweenview, rightview },
  data() {
    return {
        ratio:100
    };
  },
  mounted() {
    this.$nextTick(() => {
      window.addEventListener("resize", () => {
        // 监听浏览器窗口大小改变
        // 浏览器变化执行动作
        this.detectZoom();
      });
    });
  },
  methods: {
    detectZoom() {
      // let ratio = 0
      const screen = window.screen;
      const ua = navigator.userAgent.toLowerCase();
      if (window.devicePixelRatio !== undefined) {
        this.ratio = window.devicePixelRatio;
      } else if (~ua.indexOf("msie")) {
        if (screen.deviceXDPI && screen.logicalXDPI) {
          this.ratio = screen.deviceXDPI / screen.logicalXDPI;
        }
      } else if (
        window.outerWidth !== undefined &&
        window.innerWidth !== undefined
      ) {
        this.ratio = window.outerWidth / window.innerWidth;
      }

      if (this.ratio) {
        this.ratio = Math.round(this.ratio * 100);
      }
      console.log(this.ratio);
        //得到的额百分比
      return this.ratio;
    },
  },
};

2.在主盒子中引用

<template>
  <div class="box" :style="{width: ratio >100 ? ratio + '%' : '100%',height: ratio >100 ? ratio + '%' : '100%'}">
    <dv-border-box-11 title="智慧食堂监控平台">
      <div class="neirong">
        <leftview></leftview>
        <betweenview></betweenview>
        <rightview></rightview>
      </div>
    </dv-border-box-11>
  </div>
</template>

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值