zoukankan      html  css  js  c++  java
  • vue组件和页面的高度根据屏幕大小自适应

    网页可见区域宽:document.body.clientWidth
    网页可见区域高:document.body.clientHeight
    网页可见区域宽:document.body.offsetWidth (包括边线的宽)
    网页可见区域高:document.body.offsetHeight (包括边线的宽)

    1、data中定义clientHeight变量:

      data() {
        return {
          clientHeight: document.body.clientHeight
        }
      }

    2、实时改变clientHeight的值:

      mounted() {
        const that = this
        window.onresize = () => {
          return (() => {
            window.screenHeight = document.body.clientHeight
            that.clientHeight = window.screenHeight
          })()
        }
      },
      watch: {
        clientHeight(val) {
          // 为了避免频繁触发resize函数导致页面卡顿,使用定时器
          if (!this.timer) {
            // 一旦监听到的screenWidth值改变,就将其重新赋给data里的screenWidth
            this.clientHeight = val
            this.timer = true
            let that = this
            setTimeout(function() {
              // 打印screenWidth变化的值
              console.log(that.clientHeight)
              that.timer = false
            }, 400)
          }
        }
      }

    3、给需要自适应高度的div添加:style属性:

      <div class="review-options-details" :style="{ height: clientHeight-194 + 'px' }">
        
     </
    div>
  • 相关阅读:
    76. 最小覆盖子串 (JAVA)
    95. 不同的二叉搜索树 II (Java)
    HTTP/HTTPS协议 & GraphQL(非RESTFUL方式)
    Round Robin
    94. Binary Tree Inorder Traversal (Java)
    90. Subsets II (Java)
    Notepad++ 连接 FTP 实现编辑 Linux文件
    Git
    根据进程ID查找运行程序目录
    Flink 的广播变量
  • 原文地址:https://www.cnblogs.com/wuqilang/p/13434823.html
Copyright © 2011-2022 走看看