怎么获取高度自适应元素的高度呢?

我的元素盒子高度没有设置,由子集内容撑开,怎么获取它的高度呢?height 等各种方法获取都是0 请问有什么办法获取实际的高度?

阅读 5.6k
评论 2017-04-19 提问
    7 个回答

    你可以 延时一点时间再去获取内容的高度,例如这样

            const oBox=document.getElementById(id);
            setTimeout(function(){
                console.log(oBox.scrollHeight)
            },500)
    评论 赞赏 2017-04-19
      zyq111
      • 1
      • 新人请关照

      var element = document.getElementById('id')
      document.defaultView.getComputedStyle(element, '').height

      评论 赞赏 2019-04-10

        clientHeight, scrollHeight, offsetHeight
        innerHeight, outerHeight
        基本上总有一款适合你的

        评论 赞赏 2017-04-19

          获取的都是0 因为高度没设置 我想要的是网页加载完成后 显示的实际高度,包括子集的

          评论 赞赏 2017-04-19

            第一种可能没渲染完,js就执行了。。获取到0
            第二种可能里面子元素都是浮动的,或者绝对定位了。最外一层没高度
            第三种可能获取错元素了,js写错?

            评论 赞赏 2017-04-19

              应该是还没等渲染完元素就执行获得高度的代码导致的。

              评论 赞赏 2017-04-19

                ResizeObserver

                评论 赞赏 2019-08-04
                  撰写回答

                  登录后参与交流、获取后续更新提醒