微信小程序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源码]超长文章自动分页(客户端版)
Jan 09 Javascript
(JS实现)MapBar中坐标的加密和解密的脚本
May 16 Javascript
使用indexOf等在JavaScript的数组中进行元素查找和替换
Sep 18 Javascript
jQuery使用CSS()方法给指定元素同时设置多个样式
Mar 26 Javascript
JavaScript中创建对象的模式汇总
Apr 19 Javascript
Javascript中获取浏览器类型和操作系统版本等客户端信息常用代码
Jun 28 Javascript
清除浏览器缓存的几种方法总结(必看)
Dec 09 Javascript
JS简单实现数组去重的方法示例
Mar 27 Javascript
JavaScript实现单击网页任意位置打开新窗口与关闭窗口的方法
Sep 21 Javascript
微信小程序导入Vant报错VM292:1 thirdScriptError的解决方法
Aug 01 Javascript
JavaScript隐式类型转换代码实例
May 29 Javascript
详解element-ui 表单校验 Rules 配置 常用黑科技
Jul 11 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学习笔记 类的声明与对象实例化
2011/06/13 PHP
AJAX的跨域访问-两种有效的解决方法介绍
2013/06/22 PHP
PHP递归获取目录内所有文件的实现方法
2016/11/01 PHP
PHP抽象类基本用法示例
2018/12/28 PHP
jqgrid 简单学习笔记
2011/05/03 Javascript
jQuery列表拖动排列具体实现
2013/11/04 Javascript
js动画效果制件让图片组成动画代码分享
2014/01/14 Javascript
js检测浏览器版本、核心、是否移动端示例
2014/04/24 Javascript
Visual Studio中js调试的方法图解
2014/06/30 Javascript
js实现div弹出层的方法
2014/11/20 Javascript
JavaScript DOM元素尺寸和位置
2015/04/13 Javascript
javascript中clipboardData对象用法详解
2015/05/13 Javascript
JavaScript数组迭代器实例分析
2015/06/09 Javascript
JS实现样式清新的横排下拉菜单效果
2015/10/09 Javascript
js中判断变量类型函数typeof的用法总结
2016/08/09 Javascript
JS动态的把左边列表添加到右边的实现代码(可上下移动)
2016/11/17 Javascript
基于jQuery实现表格的排序
2016/12/02 Javascript
使用Angular缓存父页面数据的方法
2017/01/03 Javascript
jQuery表单设置值的方法
2017/06/30 jQuery
JS实现静态页面搜索并高亮显示功能完整示例
2017/09/19 Javascript
clipboard在vue中的使用的方法示例
2018/10/19 Javascript
小程序二次贝塞尔曲线实现购物车商品曲线飞入效果
2019/01/07 Javascript
少女风vue组件库的制作全过程
2019/05/15 Javascript
Python字符串的encode与decode研究心得乱码问题解决方法
2009/03/23 Python
python 获取本机ip地址的两个方法
2013/02/25 Python
根据DataFrame某一列的值来选择具体的某一行方法
2018/07/03 Python
python内置函数sorted()用法深入分析
2019/10/08 Python
selenium+Chrome滑动验证码破解二(某某网站)
2019/12/17 Python
python 3.8.3 安装配置图文教程
2020/05/21 Python
美国第二大连锁药店:Rite Aid
2019/04/03 全球购物
校班主任推荐信范文
2013/12/03 职场文书
装修致歉信
2014/01/15 职场文书
单位授权委托书范本
2014/09/26 职场文书
幼儿园小班教师个人工作总结
2015/02/06 职场文书
公司保洁员管理制度
2015/08/04 职场文书
angular异步验证器防抖实例详解
2022/03/31 Javascript