前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JQuery 获取元素到浏览器可视窗口边缘的距离

JQuery 获取元素到浏览器可视窗口边缘的距离

作者头像
授客
发布2019-09-10 18:35:59
2.6K0
发布2019-09-10 18:35:59
举报
文章被收录于专栏:授客的专栏授客的专栏
  1. 1. 测试环境

JQuery-3.2.1.min.js

下载地址:

https://gitee.com/ishouke/front_end_plugin/blob/master/jquery-3.2.1.min.js

Bootstrap-3.3.7-dist

下载地址:

https://gitee.com/ishouke/front_end_plugin/blob/master/bootstrap-3.3.7.zip

win7

  1. 2. 需求场景

实现需求:如下,获取tab标签页到页面底端的距离

前提:tab标签元素自身不携带滚动条

  1. 3. HTML代码片段

<div id="tabContent" class="tab-content">

<!--通过js获取 tab对应的页面内容-->

<div id="tab-content-80" role="tabpanel" class="tab-pane">

<iframe name="tabIframe" id="ifm80" src="/platform/page/resourceSetting.html" width="100%" frameborder="no"

border="0"

marginwidth="0"

marginheight="0"

scrolling="yes"

allowtransparency="yes"

onload="changeFrameHeight()">

</iframe>

</div>

<div id="tab-content-117" role="tabpanel" class="tab-pane active">

<iframe name="tabIframe" id="ifm117" src="/platform/page/roleSetting.html" width="100%" frameborder="no" border="0" marginwidth="0" marginheight="0" scrolling="yes" allowtransparency="yes" onload="changeFrameHeight()">

</iframe>

</div>

</div>

  1. 4. JS代码实现
代码语言:javascript
复制
代码语言:javascript
复制
/**
代码语言:javascript
复制
 * 设置tab标签页对应的页面内容高度
代码语言:javascript
复制
 */
代码语言:javascript
复制
function setTabPageContentHeight() {
代码语言:javascript
复制
    var contentContainer =  $('#tabContent '); // 获取tab标签对应的页面div容器对象
代码语言:javascript
复制
    var elementHeight = contentContainer.height();  //容器对象自身高度(如果页面刚加载完,这时还没打开tab页,会出现容器高度为0的情况
代码语言:javascript
复制
    var offsetTop = contentContainer.offset().top;  //容器距离document顶部的距离
代码语言:javascript
复制
    var scrollHieght = $(document).scrollTop();  // 滚动条高度
代码语言:javascript
复制
    var windownHeight = $(window).height();   //浏览器可视窗口的高度(不包括内边距、边框和外边距) 
代码语言:javascript
复制
代码语言:javascript
复制
    // 获取tab页面内容容器高度
代码语言:javascript
复制
    var h = windownHeight - (offsetTop-scrollHieght) - elementHeight;
代码语言:javascript
复制
代码语言:javascript
复制
}
代码语言:javascript
复制

注意:当改变浏览器窗口高度时,$(window).height() 会随之动态改变

  1. 5. 参考链接

http://blog.sina.com.cn/s/blog_141f2f34a0102vmxh.html

https://segmentfault.com/q/1010000009247077

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-08-29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档