微信小程序之滑动页面隐藏和显示组件功能的实现代码


Posted in Javascript onJune 19, 2020

用csdnAPP的用户都知道,在发布blink动态时,那个红色按钮会随着你滚动页面消失或者出现。往上滑动时,按钮消失。往下滑动时,按钮出现。

今天我们就模仿一下这个功能,只不过我们换中样式,让它逐渐滑出页面,或逐渐从页面之外滑到固定位置。

效果图:
滑动前:

微信小程序之滑动页面隐藏和显示组件功能的实现代码

滑动后:

微信小程序之滑动页面隐藏和显示组件功能的实现代码

此功能是往上滑动消失,往下滑动出现。

实现步骤:

  • 编写页面代码与样式
  • 编写逻辑代码

wxml:

<view class="mask-con {{!hidden ? 'mask-con-show' : ''
}
}
sendDynamic" bindtap="sendDynamic">
  <image class="sendDynamic mask-con 
	{
	{
	!hidden ? 'mask-con-show' : ''
	}
	}
	" src="cloud://hualibiaobaiqiang-1omla.6875-hualibiaobaiqiang-1omla-1302418355/me_icon/发布.png">
	</image>
</view>

wxss:

.sendDynamic{
 height: 100rpx;
 width: 100rpx;
 bottom:100rpx;
 right: 60rpx;
 border-radius: 50%;
 position: fixed;
 box-shadow:5rpx 5rpx 5rpx #fccee5;
}
.mask-con{
 transition: 0.5s; 
 position: fixed;
 width: 100rpx;
 height: 100rpx;
 bottom:-100rpx;
 right: 60rpx;
 text-align: center;
 line-height: 100rpx;
 }
.mask-con-show{
 bottom: 100rpx;
}

js:

data: {
 hidden:false,
 scrollTop: 0
 },
 onPageScroll(ev){
 var _this = this;
 if (ev.scrollTop <= 0) {
  ev.scrollTop = 0;
 } else if (ev.scrollTop > wx.getSystemInfoSync().windowHeight) {
  ev.scrollTop = wx.getSystemInfoSync().windowHeight;
 }
 if (ev.scrollTop > this.data.scrollTop || ev.scrollTop == wx.getSystemInfoSync().windowHeight) {
  this.setData({
  hidden:true
  })
 } else {
  this.setData({
  hidden:false
  })
 }
 setTimeout(function () {
  _this.setData({
  scrollTop: ev.scrollTop
  })
 }, 0)
 },

以上简单三步,完成目标。

总结

到此这篇关于微信小程序之滑动页面隐藏和显示组件功能的实现代码的文章就介绍到这了,更多相关小程序滑动页面隐藏和显示组件内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
popdiv
Jul 14 Javascript
jQuery基础知识filter()和find()实例说明
Jul 06 Javascript
关于jQuery的inArray 方法介绍
Oct 08 Javascript
JS对select控件option选项的增删改查示例代码
Oct 21 Javascript
jQuery搜索子元素的方法
Feb 10 Javascript
浅析AngularJS中的指令
Mar 20 Javascript
js简单时间比较的方法
Aug 02 Javascript
从零学习node.js之express入门(六)
Feb 25 Javascript
详解React-Native全球化多语言切换工具库react-native-i18n
Nov 03 Javascript
JavaScript事件对象深入详解
Dec 30 Javascript
JS实现audio音频剪裁剪切复制播放与上传(步骤详解)
Jul 28 Javascript
Vue+Element UI 树形控件整合下拉功能菜单(tree + dropdown +input)
Aug 28 Javascript
深入解读VUE中的异步渲染的实现
Jun 19 #Javascript
微信小程序报错: thirdScriptError的错误问题
Jun 19 #Javascript
微信小程序收藏功能的实现代码
Jun 19 #Javascript
微信小程序实现搜索框功能及踩过的坑
Jun 19 #Javascript
微信小程序返回上一级页面的实现代码
Jun 19 #Javascript
小程序中的箭头函数的具体使用
Jun 19 #Javascript
在VUE style中使用data中的变量的方法
Jun 19 #Javascript
You might like
一条久听不愿放下的DIY森海MX500,三言两语话神奇
2021/03/02 无线电
5种PHP创建数组的实例代码分享
2014/01/17 PHP
php设计模式之简单工厂模式详解
2014/09/04 PHP
Laravel 中使用 Vue.js 实现基于 Ajax 的表单提交错误验证操作
2017/06/30 PHP
IE7中javascript操作CheckBox的checked=true不打勾的解决方法
2009/12/07 Javascript
jQuery获取文本节点之 text()/val()/html() 方法区别
2011/03/01 Javascript
SeaJS入门教程系列之SeaJS介绍(一)
2014/03/03 Javascript
Thinkphp模板没有解析直接原样输出的解决方法
2014/10/31 Javascript
让JavaScript中setTimeout支持链式操作的方法
2015/06/19 Javascript
探讨JavaScript语句的执行过程
2016/01/28 Javascript
浅谈javascript中的事件冒泡和事件捕获
2016/12/28 Javascript
利用jQuery+localStorage实现一个简易的计时器示例代码
2017/12/25 jQuery
vue项目实现记住密码到cookie功能示例(附源码)
2018/01/31 Javascript
jQuery中复合选择器简单用法示例
2018/03/31 jQuery
React中嵌套组件与被嵌套组件的通信过程
2018/07/11 Javascript
LayUI动态设置checkbox不显示的解决方法
2019/09/02 Javascript
微信小程序实现点击卡片 翻转效果
2019/09/04 Javascript
js中console在一行内打印字符串和对象的方法
2019/09/10 Javascript
d3.js实现图形拖拽
2019/12/19 Javascript
[01:48]DOTA2 2015国际邀请赛中国区预选赛第二日战报
2015/05/27 DOTA
Python中用pycurl监控http响应时间脚本分享
2015/02/02 Python
Python自定义类的数组排序实现代码
2016/08/28 Python
Python爬虫DNS解析缓存方法实例分析
2017/06/02 Python
使用Turtle画正螺旋线的方法
2017/09/22 Python
python输入错误密码用户锁定实现方法
2017/11/27 Python
python django 原生sql 获取数据的例子
2019/08/14 Python
python lambda表达式(匿名函数)写法解析
2019/09/16 Python
Python和Sublime整合过程图示
2019/12/25 Python
Django Form常用功能及代码示例
2020/10/13 Python
天猫超市:阿里巴巴打造的网上超市
2016/11/02 全球购物
JackJones官方旗舰店:杰克琼斯男装
2018/03/27 全球购物
人事专员的职责
2014/02/26 职场文书
工作违纪的检讨书范文
2019/07/09 职场文书
解决SpringCloud Feign传对象参数调用失败的问题
2021/06/23 Java/Android
分析Python list操作为什么会错误
2021/11/17 Python
《游戏王:大师决斗》新活动上线 若无符合卡组可免费租用
2022/04/13 其他游戏