jQuery实现弹窗下底部页面禁止滑动效果


Posted in jQuery onDecember 19, 2017

在项目开发过程中,经常会遇到带有弹窗的页面,尤其是在移动端。在没有特别要求的情况下,弹窗弹出后,弹窗下的底部页面依然能够滑动。为了得到更好的用户体验,需要做到触发弹窗时,弹窗底部页面禁止滑动,关闭弹窗时,弹窗底部页面恢复滑动,具体思路如下:

1.触发弹窗时,获取滚动条所在的位置。

2.将底部页面的position属性设置为fixed。

3.设置底部页面的位置为触发弹窗时的初始位置。

4.关闭弹窗时,恢复底部页面的position属性。

5.恢复底部页面的滚动条高度。

//触发弹窗底部页面禁止滑动
function fixed(){
  var scrollTop = document.body.scrollTop;//设置背景元素的位置
  $('#content').attr('data-top',scrollTop);
  var contentStyle = document.getElementById("content").style;//content是可以滚动的背景元素id名称
  contentStyle.position = 'fixed'; //contentStyle是第二步的变量,设置背景元素的position属性为‘fixed'
  contentStyle.top = "-"+scrollTop+"px";
}

//关闭弹窗底部页面恢复滑动
function fixed_cancel(){
  var contentStyle = document.getElementById("content").style;
  var scrollTop = $('#content').attr('data-top');//设置背景元素的位置
  contentStyle.top = '0px';//恢复背景元素的初始位置
  contentStyle.position ="static";//恢复背景元素的position属性(初始值为absolute,就恢复为absolute,以此类推)
  $(document).scrollTop(scrollTop);//scrollTop,设置滚动条的位置
}

触发弹窗时执行fixed()方法;关闭弹窗时触发fixed_cancel()方法;即可获得更好的用户体验。

总结

以上所述是小编给大家介绍的jQuery实现弹窗下底部页面禁止滑动效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

jQuery 相关文章推荐
jQuery复合事件结合toggle()方法的用法示例
Jun 10 jQuery
jQuery之动画ajax事件(实例讲解)
Jul 18 jQuery
jQuery初级教程之网站品牌列表效果
Aug 02 jQuery
jQuery实现火车票买票城市选择切换功能
Sep 15 jQuery
jQuery实现右侧抽屉式在线客服功能
Dec 25 jQuery
jQuery简单判断值是否存在于数组中的方法示例
Apr 17 jQuery
JQuery元素快速查找与操作
Apr 22 jQuery
jQuery利用FormData上传文件实现批量上传
Dec 04 jQuery
jQuery - AJAX load() 实例用法详解
Aug 27 jQuery
jQuery实现弹幕特效
Nov 29 jQuery
jQuery插件simplePagination的使用方法示例
Apr 28 jQuery
JQuery实现折叠式菜单的详细代码
Jun 03 jQuery
jQuery实现点击DIV同时点击CheckBox,并为DIV上背景色的实例
Dec 18 #jQuery
HTML5+JS+JQuery+ECharts实现异步加载问题
Dec 16 #jQuery
利用JQUERY实现多个AJAX请求等待的实例
Dec 14 #jQuery
jquery获取transform里的值实现方法
Dec 12 #jQuery
jquery手机触屏滑动拼音字母城市选择器的实例代码
Dec 11 #jQuery
jQuery实现简单的下拉菜单导航功能示例
Dec 07 #jQuery
jquery学习笔记之无new构建详解
Dec 07 #jQuery
You might like
PHP的引用详解
2015/02/22 PHP
PHP的Yii框架入门使用教程
2016/02/15 PHP
Zend Framework实现Zend_View集成Smarty模板系统的方法
2016/03/05 PHP
屏蔽PHP默认设置中的Notice警告的方法
2016/05/20 PHP
PHP操作Postgresql封装类与应用完整实例
2018/04/24 PHP
php实现对文件压缩简单的方法
2019/09/29 PHP
用javascript获得地址栏参数的两种方法
2006/11/08 Javascript
用示例说明filter()与find()的用法以及children()与find()的区别分析
2013/04/26 Javascript
点击表单提交时出现jQuery没有权限的解决方法
2014/07/23 Javascript
javascript设置页面背景色及背景图片的方法
2015/12/29 Javascript
JavaScript动态数量的文件上传控件
2016/11/18 Javascript
JS实现点击表头表格自动排序(含数字、字符串、日期)
2017/01/22 Javascript
jQuery 全选 全不选 事件绑定的实现代码
2017/01/23 Javascript
Vue 2.0的数据依赖实现原理代码简析
2017/07/10 Javascript
jQuery实现的响应鼠标移动方向插件用法示例【附源码下载】
2018/08/28 jQuery
Jquery让form表单异步提交代码实现
2019/11/14 jQuery
JavaScript对象原型链原理解析
2020/01/22 Javascript
如何使用Jquery动态生成二级选项列表
2020/02/06 jQuery
使用python分析git log日志示例
2014/02/27 Python
浅谈Python中列表生成式和生成器的区别
2015/08/03 Python
python之文件的读写和文件目录以及文件夹的操作实现代码
2016/08/28 Python
python科学计算之numpy——ufunc函数用法
2019/11/25 Python
python Tensor和Array对比分析
2020/01/08 Python
tensorflow2.0保存和恢复模型3种方法
2020/02/03 Python
django表单中的按钮获取数据的实例分析
2020/07/31 Python
python自动生成sql语句的脚本
2021/02/24 Python
CSS3使用border-radius属性制作圆角
2014/12/22 HTML / CSS
高清安全摄像头系统:Lorex Technology
2018/07/20 全球购物
TCP/IP的分层模型
2013/10/27 面试题
《小儿垂钓》教学反思
2014/02/23 职场文书
数控专业毕业生自荐信范文
2014/03/04 职场文书
平安家庭示范户事迹
2014/06/02 职场文书
新店开张活动方案
2014/08/24 职场文书
2016应届毕业生实习心得体会
2015/10/09 职场文书
vue完美实现el-table列宽自适应
2021/05/08 Vue.js
使用CSS实现六边形的图片效果
2022/08/05 HTML / CSS