微信小程序页面上下滚动效果


Posted in Javascript onNovember 18, 2020

本文实例为大家分享了微信小程序页面上下滚动的具体代码,供大家参考,具体内容如下

看图

微信小程序页面上下滚动效果

源码

<view class="container container-fill">
 <view class="scroll-fullpage" bindtouchstart="scrollTouchstart" bindtouchmove="scrollTouchmove" bindtouchend="scrollTouchend" style="transform:translateY(-{{scrollindex*100}}%);margin-top: {{margintop}}px">
 <view class="section section01 {{scrollindex==0?'active':''}}" style="background: #3399FF;">
 <text class="section-maintitle">页面1</text>
 <text class="section-subtitle">我的页面”1</text>
 </view>
 <view class="section section02 {{scrollindex==1?'active':''}}" style="background: #00CC66;">
 <text class="section-maintitle">页面2</text>
 <text class="section-subtitle">我的页面”2</text>
 </view>
 <view class="section section03 {{scrollindex==2?'active':''}}" style="background: #33CCCC;">
 <text class="section-maintitle">页面3</text>
 <text class="section-subtitle">我的页面”3</text>
 </view>
 <view class="section section04 {{scrollindex==3?'active':''}}" style="background: #6699FF;">
 <text class="section-maintitle">页面4</text>
 <text class="section-subtitle">我的页面”4</text>
 </view>
 <view class="section section05 {{scrollindex==4?'active':''}}" style="background: #9966FF;">
 <text class="section-maintitle">无缝对接双创服5</text>
 <text class="section-subtitle">我的页面”5</text>
 </view>
 </view>
</view>

js

Page({
 data: {
 scrollindex:0, //当前页面的索引值
 totalnum:5, //总共页面数
 starty:0, //开始的位置x
 endy:0, //结束的位置y
 critical: 100, //触发翻页的临界值
 margintop:0, //滑动下拉距离
 },
 onLoad: function () {
 },
 scrollTouchstart:function(e){
 let py = e.touches[0].pageY;
 this.setData({
 starty: py
 })
 },
 scrollTouchmove:function(e){
 let py = e.touches[0].pageY;
 let d = this.data;
 this.setData({
 endy: py,
 })
 if(py-d.starty<100 && py-d.starty>-100){ 
 this.setData({
 margintop: py - d.starty
 })
 }
 },
 scrollTouchend:function(e){
 let d = this.data;
 if(d.endy-d.starty >100 && d.scrollindex>0){
 this.setData({
 scrollindex: d.scrollindex-1
 })
 }else if(d.endy-d.starty <-100 && d.scrollindex<this.data.totalnum-1){
 this.setData({
 scrollindex: d.scrollindex+1
 })
 }
 this.setData({
 starty:0,
 endy:0,
 margintop:0
 })
 },
})

css

.container-fill{
 height: 100%;
 overflow: hidden;
}
.scroll-fullpage{
 height: 100%;
 transition: all 0.3s;
}
.section{
 height: 100%;
}
.section-maintitle{
 display: block;
 text-align: center;
 font-size: 50rpx;
 color: #fff;
 font-weight: bold;
 letter-spacing: 10rpx;
 padding-top: 140rpx;
}
.section-subtitle{
 display: block;
 text-align: center;
 font-size: 40rpx;
 color: #fff;
 font-weight: bold;
 letter-spacing: 10rpx;
}
.active .section-maintitle,
.active .section-subtitle{
 animation: mymove 0.8s;
}
@keyframes mymove{
 from {
 transform: translateY(-400rpx) scale(0.5) rotateY(90deg);
 }
 to {
 transform: translateY(0) scale(1) rotateY(0);
 }
}

为大家推荐现在关注度比较高的微信小程序教程一篇:《微信小程序开发教程》小编为大家精心整理的,希望喜欢。

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

Javascript 相关文章推荐
用jscript实现新建word文档
Jun 15 Javascript
JavaScript 权威指南(第四版) 读书笔记
Aug 11 Javascript
同域jQuery(跨)iframe操作DOM(实例讲解)
Dec 19 Javascript
javascript 3d 逐侦产品展示(核心精简)
Mar 26 Javascript
用js闭包的方法实现多点标注冒泡示例
May 29 Javascript
jQuery+php实时获取及响应文本框输入内容的方法
May 24 Javascript
JS简单实现禁止访问某个页面的方法
Sep 13 Javascript
微信小程序 slider的简单实例
Apr 19 Javascript
vue代理和跨域问题的解决
Jul 18 Javascript
Jquery的Ajax技术使用方法
Jan 21 jQuery
基于vue实现滚动条滚动到指定位置对应位置数字进行tween特效
Apr 18 Javascript
详解ES6实现类的私有变量的几种写法
Feb 10 Javascript
node.js实现上传文件功能
Jul 15 #Javascript
js canvas实现5张图片合成一张图片
Jul 15 #Javascript
js使用文件流下载csv文件的实现方法
Jul 15 #Javascript
基于Taro的微信小程序模板消息-获取formId功能模块封装实践
Jul 15 #Javascript
微信小程序开发技巧汇总
Jul 15 #Javascript
微信小程序中如何计算距离某个节日还有多少天
Jul 15 #Javascript
微信小程序基础教程之worker线程的使用方法
Jul 15 #Javascript
You might like
全国FM电台频率大全 - 13 福建省
2020/03/11 无线电
第十五节--Zend引擎的发展
2006/11/16 PHP
php 目录与文件处理-郑阿奇(续)
2011/07/04 PHP
php添加文章时生成静态HTML文章的实现代码
2013/02/17 PHP
php获取数组长度的方法(有实例)
2013/10/27 PHP
将酷狗krc歌词解析并转换为lrc歌词php源码
2014/06/20 PHP
thinkphp5 框架结合plupload实现图片批量上传功能示例
2020/04/04 PHP
PHP7原生MySQL数据库操作实现代码
2020/07/03 PHP
jquery text()要注意啦
2009/10/30 Javascript
js 事件处理函数间的Event物件是否全等
2011/04/08 Javascript
javascript中[]和{}对象使用介绍
2013/03/20 Javascript
jQuery之排序组件的深入解析
2013/06/19 Javascript
使用jquery中height()方法获取各种高度大全
2014/04/02 Javascript
AngularJS基础 ng-click 指令示例代码
2016/08/01 Javascript
bootstrap输入框组使用方法
2017/02/07 Javascript
jQuery实现鼠标经过显示动画边框特效
2017/03/24 jQuery
JavaScript数据结构之二叉查找树的定义与表示方法
2017/04/12 Javascript
javascript闭包的使用之按钮切换功能
2018/08/30 Javascript
基于vue.js实现分页查询功能
2018/12/29 Javascript
微信小程序实现搜索功能并跳转搜索结果页面
2019/05/18 Javascript
如何修改Vue打包后文件的接口地址配置的方法
2020/04/22 Javascript
Node使用koa2实现一个简单JWT鉴权的方法
2021/01/26 Javascript
windows系统下Python环境的搭建(Aptana Studio)
2017/03/06 Python
对python3新增的byte类型详解
2018/12/04 Python
10个Python面试常问的问题(小结)
2019/11/20 Python
如何将 awk 脚本移植到 Python
2019/12/09 Python
英国口碑最好的的维他命胶囊品牌:Myvitamins(有中文站)
2016/12/03 全球购物
德国EGOIST网店:销售畅销的设计师品牌
2017/04/18 全球购物
50岁生日感言
2014/01/23 职场文书
消防器材管理制度
2014/01/28 职场文书
大学新生军训感言
2014/02/25 职场文书
高中美术教师事迹材料
2014/08/22 职场文书
通用员工手册范本
2015/05/14 职场文书
小学大队长竞选稿
2015/11/20 职场文书
《夜莺的歌声》教学反思
2016/02/22 职场文书
MySQL磁盘碎片整理实例演示
2022/04/03 MySQL