小程序显示弹窗时禁止下层的内容滚动实现方法


Posted in Javascript onMarch 20, 2019

小程序显示弹窗时禁止下层的内容滚动实现方法,具体如下

①  第一种方式

利用position:fixed.  禁止页面滚动.

一. 页面结构html 

<view class="indexPage {{proInfoWindow?'indexFixed':''}}">
  -----------此处为整个页面的结构内容
  <button catchTap="_proInfoWindowShow">点击显示弹窗</button>
</view>
// 当proInfoWindow为true的时候显示弹窗
<view wx:if="{{proInfoWindow}}">此处为弹窗内容</view>

二. CSS部分

//添加一个类名, 把弹窗的下层内容定位为fixed.实现禁止滚动的效果
.indexFixed{
 position: fixed;
 top:0;//top:0可不写,否则显示弹窗的同时会使底层滚动到顶部.
 left:0;
 bottom:0;
 right:0;
}

三. JS部分

Page({
 data: { 
  proInfoWindow:false,//控制弹窗是否显示
   
 },
  // 点击弹窗事件, 设置proInfoWindow为true, 显示弹窗.
  // 设置proInfoWindow为true的同时, 给页面添加了一个class名为indexFixed的类.显示弹窗时下层就禁止滚动,关掉弹窗时就可以滚动.
 _proInfoWindowShow(){
   this.setData({
    proInfoWindow:true
  })
 }
})

②第二种方式

用 catchtouchmove="return"

//此处为弹窗内容
<view catchtouchmove="return"> //外层加 catchtouchmove="return"仅触摸背景区域时不穿透底部.
  <view catchtouchmove="return"></view> //在每个小的区域内加 catchtouchmove="return"
  <view> // 有需要滚动的列表区域位置不要加 catchtouchmove="return", 否则列表无法滚动
    <view>滚动列表1</view>
    <view>滚动列表2</view>
    <view>滚动列表3</view>
    <view>滚动列表4</view>
  </view>
</view>

 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery对象和DOM对象之间相互转换的方法介绍
Feb 28 Javascript
js实现鼠标经过表格行变色的方法
May 12 Javascript
node.js调用C++开发的模块实例
Jul 03 Javascript
javascript实现在指定元素中垂直水平居中
Sep 13 Javascript
JS事件添加和移出的兼容写法示例
Jun 20 Javascript
jQuery制作图片旋转效果
Feb 02 Javascript
JS实现的简单拖拽功能示例
Mar 13 Javascript
详解在express站点中使用ejs模板引擎
Sep 21 Javascript
微信小程序wx.navigateTo中events属性实现页面间通信传值,数据同步
Jul 13 Javascript
详解将微信小程序接口Promise化并使用async函数
Aug 05 Javascript
解决vue数据不实时更新的问题(数据更改了,但数据不实时更新)
Oct 27 Javascript
JavaScript对象访问器Getter及Setter原理解析
Dec 08 Javascript
vue踩坑记录之数组定义和赋值问题
Mar 20 #Javascript
vue实现微信二次分享以及自定义分享的示例
Mar 20 #Javascript
vscode配置vue下的es6规范自动格式化详解
Mar 20 #Javascript
利用Promise自定义一个GET请求的函数示例代码
Mar 20 #Javascript
详解VS Code使用之Vue工程配置format代码格式化
Mar 20 #Javascript
vue使用Proxy实现双向绑定的方法示例
Mar 20 #Javascript
vue实现可视化可拖放的自定义表单的示例代码
Mar 20 #Javascript
You might like
用PHP制作静态网站的模板框架(一)
2006/10/09 PHP
PHP的PSR规范中文版
2013/09/28 PHP
又十个超级有用的PHP代码片段
2015/09/24 PHP
PHP实现链表的定义与反转功能示例
2018/06/09 PHP
PHP大文件分割分片上传实现代码
2020/12/09 PHP
可以文本显示的公告栏的js代码
2007/03/11 Javascript
YUI 读码日记之 YAHOO.lang.is*
2008/03/22 Javascript
20个最新的jQuery插件
2012/01/13 Javascript
juery框架写的弹窗效果适合新手
2013/11/27 Javascript
JavaScript静态类型检查工具FLOW简介
2015/01/06 Javascript
js实现的万能flv网页播放器代码
2016/04/30 Javascript
jQuery实现表格元素动态创建功能
2017/01/09 Javascript
JS+html5 canvas实现的简单绘制折线图效果示例
2017/03/13 Javascript
JS实现数组按升序及降序排列的方法
2017/04/26 Javascript
Nodejs调用WebService的示例代码
2017/09/29 NodeJs
详解Vue前端对axios的封装和使用
2019/04/01 Javascript
Node.js中Koa2在控制台输出请求日志的方法示例
2019/05/02 Javascript
javascript实现弹幕墙效果
2019/11/28 Javascript
vue props 一次传多个值实例
2020/07/22 Javascript
DWR内存兼容及无法调用问题解决方案
2020/10/16 Javascript
wxpython学习笔记(推荐查看)
2014/06/09 Python
python动态参数用法实例分析
2015/05/25 Python
python Pygame的具体使用讲解
2017/11/03 Python
Python变量、数据类型、数据类型转换相关函数用法实例详解
2020/01/09 Python
pytorch 使用加载训练好的模型做inference
2020/02/20 Python
Python爬虫获取页面所有URL链接过程详解
2020/06/04 Python
推荐一些比较有用的css3新属性
2014/11/11 HTML / CSS
CSS3中的opacity属性使用教程
2015/08/19 HTML / CSS
夏威夷航空官网:Hawaiian Airlines
2016/09/11 全球购物
La Senza官网:北美顶尖性感内衣品牌
2018/08/03 全球购物
社区工作者思想汇报
2014/01/13 职场文书
教师党员批评与自我批评发言稿
2014/10/15 职场文书
工伤事故证明
2014/10/20 职场文书
MySQL 分组查询的优化方法
2021/05/12 MySQL
python中subplot大小的设置步骤
2021/06/28 Python
vue数据字典取键值项目的字典问题
2022/04/12 Vue.js