微信小程序MUI导航栏透明渐变功能示例(通过改变opacity实现)


Posted in Javascript onJanuary 24, 2019

本文实例讲述了微信小程序MUI导航栏透明渐变功能。分享给大家供大家参考,具体如下:

导航栏透明渐变效果

微信小程序MUI导航栏透明渐变功能示例(通过改变opacity实现)

实现原理

1. 利用position:absolute在导航下定位一个view作为背景渐变使用;

2. 通过改变改view的opacity来实现透明渐变。

WXML

<!--pages/scroll/scroll.wxml-->
<view style="height:100%;position:fixed;width:100%;">
 <scroll-view scroll-y="false" bindscroll="scroll" style="height:100%;">
  <view class="page-group">
   <view class="page-group-position" style="opacity:{{scrollTop / 400 > 0.9 ? 0.9 : scrollTop / 400}}"></view>
   <view class="page-nav-list"><text>首页</text></view>
   <view class="page-nav-list"><text>活动</text></view>
   <view class="page-nav-list"><text>菜单</text></view>
   <view class="page-nav-list"><text>我的</text></view>
  </view>
  <view class="page-banner">
   banner
  </view>
  <view class="goods-list">
   goods-list1
  </view>
  <view class="goods-list list2">
   goods-list2
  </view>
  <view class="goods-list list3">
   goods-list3
  </view>
  <view class="goods-list list4">
   goods-list4
  </view>
 </scroll-view>
</view>

WXSS

.page-banner{height: 500rpx;background-color: greenyellow;padding: 20rpx;color:#fff;padding-top: 100rpx;}
.page-group{
 display: table;
 width: 100%;
 table-layout: fixed;
 position: fixed;
 top: 0;
 left: 0;
 z-index: 10;
}
.page-group-position{
 width: 100%;
 height: 100%;
 position: absolute;
 top: 0;
 left: 0;
 background-color: blueviolet;
 opacity: 0;
 z-index: -1;
}
.page-nav-list{
 padding:30rpx 0 ;
 display: table-cell;
 text-align: center;
 width: 100%;
 color: #fff;
}
.goods-list{
 height: 500rpx;
 background-color: green;
 padding: 20rpx;
 color:#fff;
}
.list2{background-color: blue;}
.list3{background-color: yellow;}
.list4{background-color: red;}

JS

Page({
 data: {
  scrollTop: null
 },
 //滚动条监听
 scroll: function (e) {
  this.setData({ scrollTop: e.detail.scrollTop })
 },
})

总结:

1. 需要scroll-view组件配合使用才能获取scrollTop;

2. scrollTop / 400 > 0.9,这里400的距离是根据需求改变,0.9是背景最后的半透明值,可以根据页面调节。

Demo源码:

点击此处本站下载

希望本文所述对大家微信小程序开发有所帮助。

Javascript 相关文章推荐
js禁止小键盘输入数字功能代码
Aug 01 Javascript
css值转换成数值请抛弃parseInt
Oct 24 Javascript
javascript中[]和{}对象使用介绍
Mar 20 Javascript
Javascript实现重力弹跳拖拽运动效果示例
Jun 28 Javascript
JQuery实现表格动态增加行并对新行添加事件
Jul 30 Javascript
JavaScript实现文字与图片拖拽效果的方法
Feb 16 Javascript
jQuery支持动态参数将函数绑定到事件上的方法
Mar 17 Javascript
jQuery过滤选择器经典应用
Aug 18 Javascript
HTML中setCapture、releaseCapture 使用方法浅析
Sep 25 Javascript
详解Vue.js 2.0 如何使用axios
Apr 21 Javascript
js canvas实现红包照片效果
Aug 21 Javascript
详解JavaScript之Array.reduce源码解读
Nov 01 Javascript
微信小程序导航栏滑动定位功能示例(实现CSS3的positionsticky效果)
Jan 24 #Javascript
在Node.js下运用MQTT协议实现即时通讯及离线推送的方法
Jan 24 #Javascript
记一次vue去除#问题处理经过小结
Jan 24 #Javascript
微信小程序MUI侧滑导航菜单示例(Popup弹出式,左侧滑动,右侧不动)
Jan 23 #Javascript
微信小程序MUI侧滑导航菜单示例(Popup弹出式,左侧不动,右侧滑动)
Jan 23 #Javascript
vue车牌号校验和银行校验实战
Jan 23 #Javascript
微信小程序map组件结合高德地图API实现wx.chooseLocation功能示例
Jan 23 #Javascript
You might like
在PHP中利用XML技术构造远程服务(下)
2006/10/09 PHP
防止MySQL注入或HTML表单滥用的PHP程序
2009/01/21 PHP
PHP合并数组+与array_merge的区别分析
2010/08/01 PHP
ThinkPHP实现图片上传操作的方法详解
2017/05/08 PHP
JavaScript XML操作 封装类
2009/07/01 Javascript
JSON+HTML实现国家省市联动选择效果
2014/05/18 Javascript
JS两个数组比较,删除重复值的巧妙方法(推荐)
2016/06/03 Javascript
客户端验证用户名和密码的方法详解
2016/06/16 Javascript
Angularjs中controller的三种写法分享
2016/09/21 Javascript
JavaScript实现图片懒加载(Lazyload)
2016/11/28 Javascript
jQuery插件扩展操作入门示例
2017/01/16 Javascript
Swiper 4.x 使用方法(移动端网站的内容触摸滑动)
2018/05/17 Javascript
node全局变量__dirname与__filename的区别
2019/01/14 Javascript
小程序分享模块超级详解(推荐)
2019/04/10 Javascript
ios中视频的最后一桢问题解决
2019/05/14 Javascript
JavaScript canvas基于数组生成柱状图代码实例
2020/03/06 Javascript
详解钉钉小程序组件之自定义模态框(弹窗封装实现)
2020/03/07 Javascript
详解JavaScript中分解数字的三种方法
2021/01/05 Javascript
python算法学习之基数排序实例
2013/12/18 Python
python实现dict版图遍历示例
2014/02/19 Python
Python脚本实现DNSPod DNS动态解析域名
2015/02/14 Python
python常用函数与用法示例
2019/07/02 Python
python爬虫之爬取百度音乐的实现方法
2019/08/24 Python
Python scipy的二维图像卷积运算与图像模糊处理操作示例
2019/09/06 Python
修改Pandas的行或列的名字(重命名)
2019/12/18 Python
python使用hdfs3模块对hdfs进行操作详解
2020/06/06 Python
python爬虫破解字体加密案例详解
2021/03/02 Python
利用html5 file api读取本地文件示例(如图片、PDF等)
2018/03/07 HTML / CSS
联想香港官方网站及网店:Lenovo香港
2018/04/13 全球购物
商得四方公司面试题(gid+)
2014/04/30 面试题
委托与事件是什么关系?为什么要使用委托
2014/04/18 面试题
写自荐信的七个技巧
2013/10/15 职场文书
初一体育教学反思
2014/01/29 职场文书
在宿舍喝酒的检讨书
2014/09/28 职场文书
个人向公司借款协议书
2016/03/19 职场文书
Redis5之后版本的高可用集群搭建的实现
2021/04/27 Redis