`
耳东成陈
  • 浏览: 15648 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

html 弹出模态窗口 控制背景层不能滚动

 
阅读更多
第一种方案
这个方案比较简单,适用弹出窗口内也没有内容需要滚动的时候

1 即在弹出窗口的时候 给body绑定 mouchmove事件 阻止响应
$("body").on('touchmove',function(event) { event.preventDefault(); }, false);

2 关闭弹出层的时候解绑事件
$("body").unbind('touchmove');


第二种方案
这里相对复杂一些,适用于弹窗里有内容需要滚动的时候

弹窗时
1 弹窗的时候先获取 当前滚动条滚动的 offset值
var topN = -($("body").scrollTop());//获取滚动的位置
2 给body层加css属性 position 设置为 fixed固定的
$("body").css('position', 'fixed');
这时候背景层已经不能滚动了,但是背景层的滚动条已经回滚到顶部位置,所以这里需要第三步

3 $("body").css('top', topN);//
设置top值,使页面相当于滚动了,这时候的显示情况恢复到弹窗前的样子

关闭弹窗时
1 获取弹窗时设置的 body 的css属性 top值
var scrollTop = parseInt($("body").css('top').replace('px',''));
2 body的 position属性恢复  这时候页面会跳回顶部
  $("body").css('position', '');
3 $("body").css('top', 0); top值设为0
4 $("body").scrollTop(-scrollTop);//滚动滚动条,页面不会跳回顶部

ok 搞定
分享到:
评论

相关推荐

    纯css+js实现webApp模态窗口弹出层特效

    - **响应式设计**:确保模态窗口和弹出层在不同设备和屏幕尺寸上都能良好显示,可以利用媒体查询(`@media`)进行适配。 - **可访问性**:考虑键盘导航和辅助技术的支持,如添加合适的`aria`属性。 - **性能**:...

    19种漂亮的模态窗口效果

    模态窗口,也称为对话框或弹出窗口,在网页设计中是一种常见的用户界面元素,用于在主页面上显示额外信息,而不会完全中断用户的浏览体验。在这个“19种漂亮的模态窗口效果”中,我们可以预见到一系列使用jQuery实现...

    使用div仿javascript模态窗口

    在网页设计中,模态窗口(Modal Window)是一种常见的用户界面设计模式,它可以在当前页面上弹出一个半透明的对话框,强制用户与之交互后再继续操作。本资源主要探讨如何使用HTML `<div>` 元素来实现类似JavaScript...

    使用jQuery创建模态窗口登陆效果

    在Web开发中,模态窗口(Modal Window)是一种常见的交互设计元素,它用于在用户当前浏览的页面上显示一个弹出层,阻止用户与背景页面的交互,直到弹出层被关闭。jQuery,一个流行的JavaScript库,使得创建模态窗口...

    js弹出窗口、弹出层

    总结,"js弹出窗口、弹出层"是网页交互中的重要元素,涉及到了JavaScript的DOM操作、事件处理、样式控制等多个方面。理解并掌握如何创建和使用弹出层,对于提升网页的用户体验具有重要意义。"FineMessBox"可能提供了...

    弹出窗口_背景固定_iframe

    "背景固定"是指在弹出窗口打开时,背景页面(即主页面)的视觉效果被固定,即使弹出窗口移动或滚动,背景内容仍然保持不变。这种效果有助于确保用户的注意力集中在弹出窗口上,防止他们在处理弹窗内容时迷失主页面的...

    jquery 模态modal弹出式登录框窗口.zip

    jQuery模态框,也称为弹出窗口,是一种在当前页面上显示额外信息或功能而不离开主页面的交互设计。这种设计提供了良好的用户体验,因为它允许用户在不中断现有流程的情况下查看或输入数据。 二、模态框的工作原理 ...

    弹出层改良版的popus.js

    "弹出层改良版的popus.js" 标题表明这是一个专门针对弹出层进行优化的JavaScript库,解决了原有弹出层位置不准确的问题,确保无论用户如何滚动页面,弹出层始终位于屏幕中央。 首先,让我们深入了解一下弹出层的...

    不随滚动条滚动的模式窗口

    在网页设计和开发中,"不随滚动条滚动的模式窗口"是一种常见的用户体验设计技术,它允许用户在当前页面上打开一个全屏或半屏的弹出窗口,而这个窗口不会随着页面的滚动条移动。这种效果常用于图片预览、表单填写、...

    上下拉模态弹出

    总的来说,"上下拉模态弹出"是提升用户体验的一种有效设计手法,它结合了模态窗口的聚焦效果和动态滚动的视觉吸引力。在实际开发中,需要综合考虑用户体验、性能优化和兼容性等多方面因素,以创造出既美观又实用的...

    JavaScript弹出层

    2. CSS样式:弹出层的外观主要由CSS控制,包括位置、大小、背景颜色、边框、阴影等。全屏锁定可以通过设置`position: fixed`,`z-index`确保弹出层位于最顶层,并通过调整body的overflow属性防止滚动。 3. ...

    9种js弹出动态窗口的 php代码

    7. **样式和布局**:弹出窗口的样式可以通过CSS控制,包括位置、大小、背景色、边框、阴影等。Bootstrap和jQuery UI等框架提供了预设的样式,也可以根据需求进行定制。 8. **关闭机制**:弹出窗口通常有关闭按钮或...

    js实现模态窗口实例(lhgdialog)

    7. **其他特性**:还有诸如自动关闭、定时关闭、防止多次弹出、阻止页面滚动等高级功能。 在`lhgdialogDemo`这个压缩包中,通常会包含`lhgdialog`的源代码、示例HTML文件以及对应的CSS样式文件。通过查看这些示例,...

    js、jquery阴影效果弹出层

    这可以通过监听窗口的`scroll`事件并根据弹出层的状态来控制: ```javascript var isPopupOpen = false; $(window).on('scroll', function() { if (isPopupOpen) { $(this).off('scroll'); // 阻止页面滚动 } ...

    简单精美js弹出层效果

    弹出层,也称为模态窗口或对话框,是在网页主内容上覆盖的一个浮动元素,通常用于显示与当前页面内容相关的额外信息。它不会改变浏览器URL,而是暂停用户对页面其余部分的交互,直到用户与弹出层进行交互或关闭它。 ...

    js+css 实现遮罩居中弹出层(随浏览器窗口滚动条滚动)

    这个实现的关键点在于使弹出层在页面中央保持位置,并且在用户滚动浏览器窗口时,遮罩层和弹出层能够随之滚动。 首先,HTML结构包括一个主容器 `.wrap`,用于放置页面主要内容,以及一个按钮 `#clickbtn`,用户点击...

    js弹出层多样式。

    在网页设计中,弹出层(也称为模态窗口或对话框)是一种常见的交互元素,用于在用户与页面主内容互动时提供额外信息或功能。本文将深入探讨使用JavaScript(JS)和CSS来创建多样化弹出层的方法,以及如何通过CSS实现...

    javascript点击弹出窗口

    1. **HTML结构**:首先,需要在HTML中创建弹出窗口的结构,包括弹出层和背景遮罩。弹出层通常包含需要展示的内容,而遮罩则是一个全屏的半透明元素,用于捕获用户的点击事件。 2. **CSS样式**:使用CSS对弹出层和...

    简单jQuery模态窗口

    **简单jQuery模态窗口**是一种基于JavaScript库jQuery实现的弹出式对话框,它允许开发者在网页中创建具有自定义外观的模态窗口。模态窗口通常用于显示重要的信息、警告、确认对话或进行表单输入,而不会离开当前页面...

    使用jQuery和Bootstrap实现多层、自适应模态窗口

    模态窗口,也称为对话框或弹出窗口,是一种在用户界面中显示额外信息而不离开当前页面的方法。Bootstrap提供了内置的模态组件,而jQuery则用于处理交互和动态效果。 首先,我们需要在HTML文档的头部引入Bootstrap的...

Global site tag (gtag.js) - Google Analytics