微信小程序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 相关文章推荐
jQuery控制输入框只能输入数值的小例子
Mar 20 Javascript
Js 去掉字符串中的空格(实现代码)
Nov 19 Javascript
JS获取图片高度宽度的方法分享
Apr 17 Javascript
jQuery动态星级评分效果实现方法
Aug 06 Javascript
JavaScript实现多种排序算法
Feb 24 Javascript
基于JavaScript实现鼠标向下滑动加载div的代码
Aug 31 Javascript
微信小程序 火车票查询实例讲解
Oct 17 Javascript
Angular2学习笔记——详解NgModule模块
Dec 02 Javascript
jQuery查找dom的几种方法效率详解
May 17 jQuery
vue富文本编辑器组件vue-quill-edit使用教程
Sep 21 Javascript
vue router带参数页面刷新或回退参数消失的解决方法
Feb 27 Javascript
vue-cli3.x配置全局的scss的时候报错问题及解决
Apr 30 Vue.js
微信小程序导航栏滑动定位功能示例(实现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伪造referer突破网盘禁止外连的代码
2008/06/15 PHP
PHP提示Notice: Undefined variable的解决办法
2012/11/24 PHP
PHP高手需要要掌握的知识点
2014/08/21 PHP
PHP中set_include_path()函数相关用法分析
2016/07/18 PHP
php实现基于pdo的事务处理方法示例
2017/07/21 PHP
php微信开发之谷歌测距
2018/06/14 PHP
PHP使用ActiveMQ实现消息队列的方法详解
2019/05/31 PHP
javascript 常用方法总结
2009/06/03 Javascript
发布一个基于javascript的动画类 Fx.js
2010/11/05 Javascript
修改jquery.lazyload.js实现页面延迟载入
2010/12/22 Javascript
javascript实现的DES加密示例
2013/10/30 Javascript
使用jquery实现放大镜效果
2014/09/02 Javascript
javascript父子页面通讯实例详解
2015/07/17 Javascript
jQuery+ajax简单实现文件上传的方法
2016/06/03 Javascript
jQuery中实现prop()函数控制多选框(全选,反选)
2016/08/19 Javascript
JavaScript引用类型RegExp基本用法详解
2018/08/09 Javascript
JS/HTML5游戏常用算法之碰撞检测 包围盒检测算法详解【凹多边形的分离轴检测算法】
2018/12/13 Javascript
JavaScript事件委托实现原理及优点进行
2020/08/29 Javascript
详解阿里Node.js技术文档之process模块学习指南
2021/01/04 Javascript
python 快速排序代码
2009/11/23 Python
从零学Python之入门(三)序列
2014/05/25 Python
python实现定时同步本机与北京时间的方法
2015/03/24 Python
python实现的守护进程(Daemon)用法实例
2015/06/02 Python
Python简单删除列表中相同元素的方法示例
2017/06/12 Python
Python操作SQLite数据库的方法详解
2017/06/16 Python
Python探索之修改Python搜索路径
2017/10/25 Python
使用python判断你是青少年还是老年人
2018/11/29 Python
解决PyCharm的Python.exe已经停止工作的问题
2018/11/29 Python
TensorFlow通过文件名/文件夹名获取标签,并加入队列的实现
2020/02/17 Python
Python标准库shutil模块使用方法解析
2020/03/10 Python
HTML5的hidden属性兼容老浏览器的方法
2014/04/23 HTML / CSS
Nike俄罗斯官方网站:Nike RU
2021/03/05 全球购物
幼儿如何来做好自我评价
2013/11/05 职场文书
运动会通讯稿500字
2014/02/20 职场文书
餐饮总经理岗位职责
2014/03/07 职场文书
CSS 鼠标点击拖拽效果的实现代码
2022/12/24 HTML / CSS