怎么禁用遮罩层touchmove?

怎么禁用遮罩层touchmove?,第1张

1、在遮罩层停止添加touchmove

2、如果d窗不在遮罩层内部,那么冒泡就不会经过遮罩层,也就无法屏蔽滑动了

3、如果实在不能把d窗放到遮罩层内,那么给d窗加一个单独的 .prevent 修饰符也可以,下面这两种方式都是有效的:

4、这种屏蔽方式只是屏蔽了滑动,对于PC端的鼠标滚轮是无效的,但屏蔽鼠标滚轮也很简单,把 touchmove 事件处理器改成 scroll 事件的处理器就好。

前端移动端开发,在页面中打开了一个层,同时打开一个遮罩层,滚动这个层时 下面的页面也会跟着滚动,禁止下面那个页面的滚动, 只滚动当前的层。

打开d层时body的touchmove事件addEventListener增加阻止默认行为的事件,关闭d层时removeEventListener;

阻止touchstart事件的默认行为,在vue下@touchstart.prevent,在d出层和底层元素之间曾加一层遮罩;

通过jquery的show()和hide()函数联合使用,实现d出窗口。

一、show()和hide()函数解析:

1、show() 方法显示隐藏的被选元素。

注意:show() 适用于通过 jQuery 方法和 CSS 中 display:none 隐藏的元素(不适用于通过 visibility:hidden 隐藏的元素)。

2、hide() 方法隐藏被选元素。

这与 CSS 属性 display:none 类似,但是隐藏的元素不会被完全显示(不再影响页面的布局)。

二、设计一个HTML页面,包括一个简单的d出窗,和一个显示按钮。其中,调用了jquery的以上两个函数。具体代码如下:

三、设计遮罩层的样式,如下:

四、d出窗口的css样式,代码如下:

五、初始页面如下:

六、点击按钮,查看d出窗口结果:

七、关闭d出窗后,打开开发者中心,如下:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11933481.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存