微信小程序----导航栏透明渐变二

来源:互联网 发布:淘宝网瘦身腰带 编辑:程序博客网 时间:2024/05/16 03:36

导航栏透明渐变效果

导航栏透明渐变

实现原理

  1. 给page-group设置的背景颜色采用rgba;
  2. 通过改变rgba其中a的值来实现透明渐变。

WXML

<view style="height:100%;position:fixed;width:100%;">  <scroll-view scroll-y="false"  bindscroll="scroll" style="height:100%;">  <!-- 改变位置,去掉多余的view,直接改变背景色的透明度实现透明渐变 -->    <view class="page-group" style="background-color: rgba(138, 43, 226,{{scrollTop / 400 > 0.9 ? 0.9 : scrollTop / 400}});">      <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;}/*去掉多余的class,直接设置背景色为rgba格式*/.page-group{  display: table;  width: 100%;  table-layout: fixed;  background-color: rgba(138, 43, 226,0);  position: fixed;  top: 0;  left: 0;  z-index: 10;}.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.优点是去掉了多余的view空和class代码,减少了代码,实现了相同的效果。
2.缺点就是在微信开发者工具中,保存刷新不能获取当前位置scrollTop,只有滚动才能获取scrollTop。

DEMO下载

更多微信小程序实例请点击:http://blog.csdn.net/m0_38082783/article/details/78853722

原创粉丝点击