javascript - 如何发现用户设备屏幕的高度小于页面内容的高度?
问题描述
我正在用 PHP 制作一个 Web 应用程序,并且仅当用户需要滚动页面时才想在页脚中放置“返回顶部”元素,否则将不会显示。如何验证用户浏览器屏幕的高度太小而无法在<body>
没有框架的情况下显示标签?
现在页脚看起来像:
<footer class="container pt-4 my-md-5 pt-md-5 border-top">
<p class="float-right"><a href="#">Back to top</a></p>
<p>© 2020 · <a href="#" target="_blank">Telegram</a> · <a href="#" target="_blank">GitHub</a></p>
</footer>
解决方案
您需要像这样计算相对于窗口高度的内容高度
var contentHeight=document.getElementById("content-id").clientHeight
var contentRelativeHeight= contentHieght / window.innerHeight
然后检查它是否小于或等于 1(这意味着内容高度小于或等于设备屏幕高度)隐藏回到顶部按钮。
<p id="goTopBtn" class="float-right"><a href="#">Back to top</a></p>
if(contentRelativeHeight <= 1){
document.getElementById("goTopBtn").style.display="none"
}
推荐阅读
- haskell - 返回类型丢失 IO
- java - Jigsaw:将 JRE 与自动模块捆绑在一起
- reactjs - 使用自定义扩展加载资产不起作用
- c++ - QNetworkaccessmanager 对象连接函数不调用
- asp.net - 如何在单个 Web api ASP.NET Core 中发布 json 和文件对象
- javascript - 在返回结果之前等待ajax完成(通用功能)
- excel - 仅将 VBA 粘贴到可见单元中优化
- openssl - 如何为mingw编译器编译fips?
- java - 在黄瓜框架的报告中生成 json 后在哪里调用 jar 文件(ATM)?
- javascript - 根据角度js中的数据过滤对象