ios H5嵌入app 后,fixed弹窗的高度为$(window).innerHeight()高度时,超出视口高度

ios H5嵌入app 后,fixed弹窗的高度为$(window).innerHeight()高度时,超出视口高度,即:
弹窗没有出现滚动条,此刻高度为$(window).innerHeight();

html:

<div class="export-success-dialog" id="export-success-dialog">
    <div class="content">
        .........
    </div>
</div>

css:

.export-success-dialog{position: fixed;top: 0;left: 0;width: 100%;max-height: 100%;overflow-y:auto;z-index: 9999;padding:4%;color: #666;background: #fff;}
.export-success-dialog .content{display: block;width: 100%;max-height: 100%;overflow-y: auto;position: relative;  }

clipboard.png

如果将弹窗高度改为:$(window).innerHeight()-头部title bar高度,即会出现滚动条

$('#export-success-dialog').css('max-height',$(window).innerHeight()-80);
80为测试,取了大概一个值

本地运行如图:

clipboard.png

是不是H5嵌入app后,页面的高度 需要扣除 title bar高度?

阅读 4.9k
2 个回答

$(window).innerHeight() 并非可用 webview 高度,建议研究下 clientHeight、offsetHeight、availHeight 等的差别~

网页可见区域宽: document.body.clientWidth
网页可见区域高: document.body.clientHeight
网页可见区域宽: document.body.offsetWidth (包括边线的宽)
网页可见区域高: document.body.offsetHeight (包括边线的高)
网页正文全文宽: document.body.scrollWidth
网页正文全文高: document.body.scrollHeight
网页被卷去的高: document.body.scrollTop
网页被卷去的左: document.body.scrollLeft
网页正文部分上: window.screenTop
网页正文部分左: window.screenLeft
屏幕分辨率的高: window.screen.height
屏幕分辨率的宽: window.screen.width
屏幕可用工作区高度: window.screen.availHeight
屏幕可用工作区宽度: window.screen.availWidth

链接:https://www.jianshu.com/p/ad2...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题