您的当前位置:首页>全部文章>文章详情

【UniApp】uniapp禁止页面上下滚动

CrazyPanda发表于:2023-12-12 23:33:48浏览:392次TAG:



功能场景

我目前是在用uniapp做一个H5程序,中间有一个排行榜的页面只展示前十名,但是里面的导航是自定义导航栏,会占据文档流的位置,所以背景图宽高固定为100vh 100vw会导致页面比较晃(上下晃动),有损美观,就想办法不让页面出现滚动,我百度了两个方法:

第一个方法"app-plus":{“bounce”:“none”}

在pages.json页面中:将回弹属性关掉,禁止页面下拉显示空白

{
    "path" : "pages/mine/mine",
    "style" : {
        "navigationBarTitleText": "我的",
        "navigationStyle":"default",
        "navigationBarBackgroundColor":"#FFFFFF",
        "navigationBarTextStyle":"black",
        "enablePullDownRefresh":false,
        "app-plus":{
            "bounce":"none" // 将回弹属性关掉
        }
    }
},

但是不知道为什么,我使用这个方法好像不太管用,也可能是因为我是H5页面的原因,因为没时间整理,我就没深思,我紧接着百度了其他方法

第二个方法

// 阻止页面滚动
stop(){
	var box=function(e){passive: false ;};
	document.body.style.overflow='hidden';
	document.addEventListener("touchmove",box,false);
},
// 允许页面滚动
move(){
	var box=function(e){passive: false };
	document.body.style.overflow=''; // 出现滚动条
	document.removeEventListener("touchmove",box,false);
},

在methods里面CV这个方法,然后直接在onLoad中调用就可以了
1.png
但是这个方法有一个bug,就比如你只想让首页中点击排行榜进入的页面禁止滚动,然后你会发现,你返回首页的时候,首页的页面也不被禁止滚动了,不仅是首页,所有的页面都被禁止滚动了,这个时候你需要在页面中增加一个监听离开页面的事件,在这个事件中CV上面的 允许页面滚动 方法。
但是…救命啊家人们,为什么我在页面上写上onHide()和onUnload()事件都没触发呢?!!我要怎么写才能监听用户离开页面
1.png
写完这俩方法后,我返回上一页,这俩事件一点反应都没有[哭哭],写着写着把自己绕进去了(博客里为啥没有办法发表情,算了…截个图吧)

猜你喜欢

【UniApp】uniapp连接数据库
1.首先安装mysql,我用的是cnpm i mysql2.在server目录创建一个名叫db的目录,目录下创建sql.js文件  3.在文件中填入如下内容:var mysql      = require('mysql'); var connection = mysql.createConnection({   host&nbs
发表于:2023-12-13 浏览:381 TAG:
【UniApp】uniapp页面超出手机屏幕怎么办
随着移动设备的普及和互联网的飞速发展,越来越多的开发者开始将目光投向了移动端开发。而在移动端开发中,uniapp框架成为了众多开发者的首选。uniapp是一款基于vue.js的跨平台开发框架,能够实现一次编码,多端发布的效果。无论是iOS端还是安卓端,都可以实现一致的用户体验。但是,随着项目的不断发展,往往会出现页面超出手机屏幕的问题。那么,如何解决这一问题呢?一、flex布局首先,我们可以使用flex布局实现页面适配。如下所示:.container {  &nbs
发表于:2023-12-22 浏览:321 TAG:
【UniApp】最新uniapp打包IOS详细步骤
需要公司提供苹果开发者账号即可1. 打开苹果开发者官网点击打开链接🔗2.点击这个选项打开开发者配置需要注册账号并花钱加入成为开发者才会显示这个选项,一般公司会提供苹果开发者账号的3. 先配置证书Certificates 4.这里需要上传一个CSR文件5.生成CSR文件需要去这个网站 生成,或者通过别的渠道生成CSR文件PS: 上面的网站已经挂了,现在可用网站https://www.yunedit.com/,流程还是一样,生成需要使用到的文件就行  6. 去上传刚刚下载的CSR文件7. 下载苹果
发表于:2023-12-21 浏览:335 TAG:
【UniApp】uniapp 实现抽奖幸运大转盘功能
实现抽奖幸运大转盘功能。效果图:资源图片: 如果奖品是支持动态的,需要自己重新改一下布局,逻辑不变。代码:<template> <view class="relative"> <image :src="require('@/static/newPerson/bj.png')" mode="widthFix" class="&q
发表于:2023-12-12 浏览:420 TAG:
【UniApp】如何在uniapp中集成第三方登录功能
如何在uniapp中集成第三方登录功能在现如今的社交媒体时代,第三方登录功能已经成为了许多应用程序中不可或缺的一部分。通过集成第三方登录功能,可以方便用户使用其它平台的账号来快速登录并使用应用程序。本文将以uniapp为例,介绍如何在uniapp中集成第三方登录功能,并提供具体的代码示例。创建第三方开放平台应用首先,您需要在相应的第三方开放平台注册并创建一个应用。常见的第三方登录平台有微信、QQ、微博等。在注册应用时,您将获得相关的应用ID和密钥,这些信息将用于后续集成中。安装unia
发表于:2023-12-24 浏览:364 TAG:
【UniApp】uniapp如何实现多端统一开发
Uniapp是一个基于vue.js的框架,可以实现一次开发,多端发布,包括了H5、小程序、App等多个平台。本文将介绍如何使用Uniapp实现多端统一开发,并附上代码示例。一、项目创建和配置在HBuilderX中创建Uniapp项目,选择需要开发的目标平台。在项目的manifest.json文件中配置App基本信息,比如包名、版本号等。配置项目的各平台的自定义配置,比如小程序的appid等。二、组件和样式的开发Uniapp支持使用vue.js的组件和样式进行开发,在不同平台上的样式和组
发表于:2023-12-24 浏览:285 TAG:
【UniApp】uniapp中如何实现社交分享和朋友圈功能
Uniapp是一种基于Vue.js的开发框架,它可以跨平台开发各种应用程序。在实现社交分享和朋友圈功能时,Uniapp提供了一些插件和API可以方便地实现。本文将介绍如何在Uniapp中实现社交分享和朋友圈功能,并提供具体的代码示例。首先,我们需要使用uni的社交分享插件uni-share来实现社交分享功能。在 pages.json 的 usingComponents 属性中引入插件,如下所示:"usingComponents": {  &nbs
发表于:2023-12-23 浏览:353 TAG:
【UniApp】uniapp怎么去除子页面的左侧返回
随着移动设备在人们生活中使用越来越广泛,移动应用的需求也愈发增长。近年来,由于跨端技术的发展,多端混合应用开发成为了主流,uniapp就是其中的佼佼者。然而,在开发uniapp应用时,我们可能会遇到一些问题,比如如何去除子页面的左侧返回按钮。在uniapp中,每当我们打开一个新的页面,都会在左上角出现一个返回按钮,点击该按钮即可返回到上一页。但是,如果我们在某些场景中不希望显示这个返回按钮,就需要去除它。下面,我将介绍两种方法来实现这一功能。一、使用导航栏组件uniapp提供了一个导航
发表于:2023-12-25 浏览:300 TAG:
【Uniapp】uniapp如何传递参数
一、通过URL传递参数URL是一种描述文件在计算机网络中位置的方式。在uniapp中,可以通过URL传递参数。在web开发中,可以通过query string来传递参数。在uniapp中有两种方式来进行URL传参:路由跳转和h5页面跳转:1.路由跳转uniapp中提供了一些路由相关的API,其中,uni.navigateTo和uni.redirectTo这两个API可以在跳转时携带参数。在跳转时,可以将参数以对象的形式传递给URL,并以query string(查询字符串)的形式来表示。如下所示
发表于:2024-03-26 浏览:318 TAG:
【UniApp】uniapp中弹出层如何遮挡住uniapp中自带的tabbar
在 uniapp 中,如果你想要遮挡住自带的 tabbar,你可以使用 uniapp 自带的弹出层组件来实现。具体来说,你可以使用 uniapp 的 popup 组件来实现弹出层的效果。你可以在 popup 组件中包含你想要显示的内容,然后设置 popup 组件的 mask 属性为 true,这样就可以在弹出层中显示一个半透明的蒙层,来遮挡住底部的 tabbar。示例代码如下:<template>     <viewclass=&quot
发表于:2023-12-13 浏览:337 TAG: