首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

禁止页面滚动的方案

禁止页面滚动的方案 弹窗是一种常见的交互方式,而蒙是弹窗必不可少的元素,用于隔断页面与弹窗区块,暂时阻断页面的交互。...当弹出禁止下的页面滚动,也可以称为滚动穿透的问题,文中介绍了一些常用的解决方案。...实现 首先需要实现一个蒙滚动的效果示例,当我们点击弹窗按钮显示蒙之后,再滚动鼠标的话能够看到蒙下的页面依旧是能够滚动的。...charset="utf-8"> 蒙禁止页面滚动的方案...所以如果在蒙内部有元素需要滚动的话,需要用Js控制其逻辑,但是逻辑控制起来又是比较复杂的,我们可以判断事件的event.target元素,如果touch的目标是弹窗不可滚动区域即背景蒙就禁掉默认事件

6.1K21
您找到你想要的搜索结果了吗?
是的
没有找到

C#结合JS 修改解决 KindEditor 弹出问题

,只显示了遮罩,而内容则定位无法正确显示,下面所列是一些有关弹出的功能,正确显示如下图: 但某些时候,会只显示遮罩,无法显示弹出,如下图: 原因分析 在浏览器显示内容中右击审查元素(360极速...position 定位缺失了 top 值,这应该是弹出问题之所在。...如下图,我们发现遮罩的 z-index 值为 811212,弹出的 z-index 值为 811213: 因此打开 kindeditor.js 核心文件进行查找修改,该文件存在于插件应用的根目录:...关于弹出显示如果不修改代码,还可以使用一种消极方法进行操作,即点击其全屏功能,如下图: 全屏后兼容性比较好,未出现弹出定位不准的问题,但如果在整体操作界面上来说,来回的切换全屏模式比较繁琐。...到此关于修改解决 KindEditor 弹出问题就介绍到这里,感谢您的阅读,希望本文能够对您有所帮助。

11910

滚动穿透的6种解决方案【已自测】

在移动端中,如果我们使用了一个固定定位的遮罩,且其下方的dom结构的宽度|高度超出屏幕的宽度|高度,那么即使遮罩弹出后铺满了整个屏幕,其下方的dom结构依然可以滚动,这就是大家所说的“滚动穿透”。...关键代码: JS控制弹窗的交互、body的禁止滚动 ? css添加弹的超出滚动效果 ? 局限问题: 弹中内容滚动到顶部或底部后,还会连带页面body一起滚动。也就是还会发生穿透效果。...就能阻止滚动穿透。 关键代码: js控制弹窗的交互、弹窗的禁止滚动 ?...也就是禁止整个弹窗的touchmove的默认事件,以阻止滚动穿透。 同样,如果弹中需要滚动效果,则不能解决了。...那么这时,就引来我们的主题难点,可以有以下几种思路解决: 四、body滚动 + 弹内部滚动[js-检测touchmove的target] 简单粗暴,一针见血:谁能动谁动,谁不能动就禁止touchmove

13.5K31

这一次,彻底解决滚动穿透

什么是滚动穿透 如图所示,有一遮罩蒙覆盖在body上时,当我们滚动遮罩,它下面的内容也会跟着一起滚动,看起来好像是上面的滚动事件穿透到下面的DOM元素上一样,我们称之为滚动穿透。...;} 这个想法很美好,在不侵入JS的情况下禁止滚动,然而: 只加 overflow:hidden对移动端是无效的!...(请注意蒙层出现时,底部列表发生的变化) 在这个交互过程中,浮弹出时,底部列表首先滚动条被置为初始态,关闭浮后重置为之前的记录位置。...实际上浮弹出背景是有一次跳变。 这种方案实现简单,若认为重置滚动条的跳变无伤大雅的情况下可以优先采用此方案。 阻止body的默认滚动?...假如我们的浮上真的需要滚动事件,就不能阻止这些元素的默认行为。 浮上面的滚动元素?

2.4K21

📚一站式解决:H5开发全攻略,看这篇让你省时又省力

.container { overscroll-behavior: contain; } ⭐️⭐️禁止屏幕抖动 通过提前声明滚动容器的padding-right为滚动条宽度,可以防止滚动条的出现导致屏幕抖动...此外,点击穿透问题也常见,如点击蒙,蒙消失后可能会触发蒙下层元素的点击事件。 解决方案 禁止缩放:通过设置 meta 标签的 user-scalable=no来禁止用户缩放。...兼容原理,1.判断版本类型 2.更改滚动的可视区域 解决方案 通过监听页面高度变化,强制恢复成弹出前的高度。...= document.querySelector('.content'); // 记录滚动位置 let scrollTop = 0; // 禁止滚动穿透 function disableScroll...// 恢复滚动位置 window.scrollTo(0, scrollTop); } // 示例使用,当某个事件触发时禁止滚动穿透 function disableScrollEvent() {

41020

移动端常见问题解决方案

-webkit-tap-highlight-color:transparent; 取消ios里Button、Input上的默认样式 -webkit-appearance:none; 禁用长按页面时的弹出菜单...通常当你在手机上长按图像 img ,会弹出选项 存储图像 或者 拷贝图像,若不想让用户这么操作,可以设置方法来禁止: img, a {-webkit-touch-callout: none;} H5页面...,文本的大小会重新计算,进行相应的缩放,当我们不需要这种情况时,可以选择禁止: html { -webkit-text-size-adjust: 100%; } 禁止选中内容 如果你不想用户可以选中页面中的内容...遮罩滚动问题 在有遮罩的情况下,遮罩下方的内容依然可以透过遮罩滚动,因此要取消这种操作 (function(){ var scrollTop = 0; // 显示弹出...$('.open').click(()=>{ // 在弹出显示之前,记录当前的滚动位置 scrollTop = getScrollTop(); $('.workflow-modal

1.2K10

layui框架——弹出layer

两种调用方法: 1、引用独立的layer.js文件 引入好layer.js后,直接用即可 layer.msg('hello...dom元素不会在原位置显示,会移动到弹出中;退出弹出后会在原位置显示,最好将DOM容器设置为display:none。...//layero 为 弹出对象 //在回调函数末尾添加 “return false”可以禁止点击该按钮关闭弹出 return...(layero); } 20、scrollbar-是否允许浏览器出现滚动条 类型:Boolean,默认:true,默认允许浏览器滚动 如果设定scrollbar: false,则屏蔽,即使浏览器存在滚动条...layer.close(layer.index); //关闭最新弹出,layer.index获取的始终是最新弹出的某个,值是由layer内部动态递增计算的 //当你在iframe页面关闭自身时

10.6K10

web自动化08-下拉选择框、弹出框、滚动

应用场景:页面操作中,一旦出现弹窗,不进行处理,后续的操作无法进行   弹窗分类:1、系统弹窗(js实现)  2、自定义弹窗(前端代码封装) 网页中常用的弹出框有三种:             1...页面注册同意条款,需要滚动条到最底层,才能点击同意 先提需求:打开注册页面A,暂停2秒后,滚动条拉到最底层 说明:selenium中并没有直接提供操作滚动条的方法,但是它提供了可执行JavaScript...设置JavaScript脚本控制滚动条     js = "window.scrollTo(0,1000)"     (0:左边距;1000:只是一个尽可能大的值,不是准确值)   2. selenium...调用执行JavaScript脚本的方法     driver.execute_script(js) 我们来做一下上边需求: # 最底层 js1 = "window.scrollTo(0,10000)"...driver.execute_script(js1) # 最顶层 js2 = "window.scrollTo(0,0)" driver.execute_script(js2)

25640

2017移动前端的一些总结web前端 —— 移动端知识的一些总结一.css部分二.js部分

,不过是移动设备对页面 做了缩小优化,所以字体等都相应缩小了 (980px是相对于手机像素的,我的是超过1000px多一些就出现滚动条了,这个没具体研究)。...减去键盘的 高度,需要手动去触发让视窗高度回到正常,然后试了很多方法都没成功,后来的方案是输入框消失时给页面加隐形的很大的 padding比如 1000px并在 30ms后改为正常 13.禁止用户选中文字...和 zepto.js里的 tap事件。...假如你 tap一个弹出元素(这个元素遮罩了一个 a标签),这个元素立即消失,这样由于上述的 0.3s延迟 tap事件就会传递给 a标签成 click事件造成a标签跳转。...(这个没用过)  ③ 有的时候比如弹出一个 iphone上滑动出来的,点击黑色半透明区域弹出消失,这种可以在黑色区域绑定 touchend也是和 tap差不多的效果 7.当弹窗出现时,想禁止屏幕的滑动

3.7K40
领券