使用jQuery实现div居中显示的技巧
需积分: 3 72 浏览量
更新于2024-09-10
收藏 2KB TXT 举报
"这篇文章主要介绍了如何使用jQuery实现一个div元素悬浮在页面中央的效果。通过创建一个自定义的jQuery方法center(),将div的定位设置为fixed,并计算出居中的top和left值,使得div始终保持在窗口中心。同时,当窗口大小发生变化时,会自动调整div的位置,以保持其在视口中央。示例代码分为两部分,第一部分是基本的悬浮中央实现,第二部分考虑了窗口大小变化的情况。"
在网页开发中,有时候我们需要让某个div元素始终悬浮在页面的中央位置,无论用户滚动页面或改变浏览器窗口大小。jQuery提供了一个简单的方式来实现这一效果。本文以一个id为"checkBookingInfo"的div为例,讲解如何用jQuery来实现这个功能。
首先,我们需要创建一个自定义的jQuery扩展方法`center()`,这个方法将会处理div的定位。代码如下:
```javascript
jQuery.fn.center = function() {
this.css("position", "fixed");
this.css("top", ($(window).height() - this.height()) / 2 + $(window).scrollTop() + "px");
this.css("left", ($(window).width() - this.width()) / 2 + $(window).scrollLeft() + "px");
return this;
};
```
这段代码中,`this.css()`用于设置样式,`position: fixed`确保div相对于浏览器窗口定位。然后通过计算窗口高度和宽度与div自身高度和宽度的差值的一半,加上窗口的滚动偏移量,使得div的垂直和水平位置居中。
为了让div在窗口大小变化时仍然保持在中央,我们需要监听窗口的`resize`事件:
```javascript
$(window).on('resize', function() {
if ($("#checkBookingInfo").is(":visible")) {
$("#checkBookingInfo").center();
$("#checkBookingInfo").show();
}
});
```
当窗口尺寸发生变化时,检查div是否可见,如果可见则调用`center()`方法重新计算并设置div的位置。
最后,显示div并应用`center()`方法:
```javascript
$("#checkBookingInfo").center();
$("#checkBookingInfo").show();
```
这样,id为"checkBookingInfo"的div就能始终悬浮在页面中央了。
总结一下,通过使用jQuery,我们可以轻松地实现div元素的悬浮中央效果,关键在于设置div的固定定位和根据窗口尺寸动态调整其top和left值。同时,结合窗口的resize事件监听,可以确保在窗口大小变化时div的中央位置不会受到影响。这是一个实用的技巧,可以在多种场景下提高用户体验,比如弹窗提示、信息提示框等。
2020-11-26 上传
2019-09-14 上传
2020-12-10 上传
2020-12-01 上传
2020-12-28 上传
点击了解资源详情
点击了解资源详情
dfswsh
- 粉丝: 0
- 资源: 1
最新资源
- 黑板风格计算机毕业答辩PPT模板下载
- CodeSandbox实现ListView快速创建指南
- Node.js脚本实现WXR文件到Postgres数据库帖子导入
- 清新简约创意三角毕业论文答辩PPT模板
- DISCORD-JS-CRUD:提升 Discord 机器人开发体验
- Node.js v4.3.2版本Linux ARM64平台运行时环境发布
- SQLight:C++11编写的轻量级MySQL客户端
- 计算机专业毕业论文答辩PPT模板
- Wireshark网络抓包工具的使用与数据包解析
- Wild Match Map: JavaScript中实现通配符映射与事件绑定
- 毕业答辩利器:蝶恋花毕业设计PPT模板
- Node.js深度解析:高性能Web服务器与实时应用构建
- 掌握深度图技术:游戏开发中的绚丽应用案例
- Dart语言的HTTP扩展包功能详解
- MoonMaker: 投资组合加固神器,助力$GME投资者登月
- 计算机毕业设计答辩PPT模板下载