通过Vue绑定zoom样式值实现禁止页面放大缩小

在这里插入图片描述

<template>
  <div id="app"
     :style="{'transform':`scale(${scalesNum}) translate(-50%,0)`,
    '-webkit-transform':`scale(${scalesNum}) translate(-50%,0)`,
    '-moz-transform':`scale(${scalesNum}) translate(-50%,0)`,
    '-o-transform':`scale(${scalesNum}) translate(-50%,0)`,
    '-ms-transform':`scale(${scalesNum}) translate(-50%,0)`}">

    <router-view/>
  </div>

</template>

<script>
export default{
  data () {
    return {
      scalesNum: 1 // 缩放比例
    }
  },
  mounted () {
    // 计算缩放比例

    this.resize_window()

    window.addEventListener('resize', () => {
      this.resize_window()

    })

  },

  methods: {
    resize_window() {// 因为设计图是带1920*1080的,但是浏览器本身带顶部工具栏,所以缩放到时候稍微更小一点,这样不会有滚动条,这个值可以选择更大些,比如2300,这样左右两边会有空白
      let myWidth = document.documentElement.clientWidth
      let myHeight = document.documentElement.clientHeight
      if( myHeight / 1920 !== 0 && (( myWidth / 1920) / (myHeight / 1080) >= 1)){
        console.log()
        this.scalesNum = myHeight / 1080
      }else{
        this.scalesNum = myWidth / 1920
      }
    }
  }
}

</script>

<style>

#app{
  margin: 0;

  padding: 0;

  transform-origin: 0 0;

  position:relative;

  width:1920px;

  height: 1080px;

  left:50%;

  overflow: hidden;
}
</style>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值