微信小程序MUI导航栏透明渐变功能示例(通过改变opacity实现)
作者:Rattenking 发布时间:2024-05-11 09:42:26
标签:微信小程序,MUI,导航栏
本文实例讲述了微信小程序MUI导航栏透明渐变功能。分享给大家供大家参考,具体如下:
导航栏透明渐变效果
实现原理
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源码:
点击此处本站下载。
希望本文所述对大家微信小程序开发有所帮助。
来源:https://blog.csdn.net/m0_38082783/article/details/78854045
0
投稿
猜你喜欢
- 项目背景图片轮播是前端项目必有项,当前有很多效果很酷炫的轮播插件,例如 Swiper 。但是当我们项目中的图片轮播只需要一个很简单的轮播样式
- 本文实例讲述了php指定长度分割字符串str_split函数用法。分享给大家供大家参考,具体如下:示例1:$str = 'abcde
- 1. 使用性能分析器Golang提供了内置的性能分析工具 pprof,可以帮助您分析和优化应用程序的性能瓶颈。下面是使用 
- 最近在使用NFineBase框架+c#做一个系统的时候,在使用sql server 2012 连接数据库的时候 ,遇到几个问题。一.就是在本
- 自己写了一下,适用而已,不太好,应该还能优化。先自己记录一下。不说废话了,直接贴代码最好:/* * 获得时间差,时间格式为 年-月
- 如下所示:import pandas as pd #显示所有列pd.set_option('display.max_columns&
- 什么是继承啊?答:别人白给你的过程就叫继承。为什么要用继承呢?答:捡现成的呗。好吧,既然大家都想捡现成的,那就要学会怎么继承!在了解之前,你
- clipboardData 对象提供了对于预定义的剪贴板格式的访问,以便在编辑操作中使用。成员表方法 描述 clearData 通过 dat
- Http与https对比详细介绍概要:HTTPS(Secure Hypertext Transfer Protocol)安全超文
- 1、旅行商问题(Travelling salesman problem, TSP)旅行商问题是经典的组合优化问题,要求找到遍历所有城市且每个
- flask-login 模块简介Flask-Login 是一个 Flask 模块,可以为 Flask 应用程序提供用户登录功能。要在 Fla
- 方法: 使用urlencode函数urllib.request.urlopen()import urllib.requestimport u
- 安装@vitejs/plugin-vue-jsxyarn add -D @vitejs/plugin-vue-jsxnpm i -D @vi
- 为了安全起见,最好还是给打开的文件对象指定一个名字,这样在完成操作之后可以迅速关闭文件,防止一些无用的文件对象占用内存。举个例子,对文本文件
- 安装SQL Server 2005弄了好久,终于可以了。。。期间问题重重,想拿出来和大家一同分享的。第一种错误显示:无法在com+目录中安装
- 随着互联网产业的飞速发展和电子产业的飞速发展,人们的社交似乎离不开网络,这就应运了SNS的飞速发展。从打开QQ空间关注朋友们的动态,最近心情
- 什么是闭包:闭包是一个存在内部函数的引用关系。该引用指向的是外部函数的局部变量对象(前提是内部函数使用了外部函数的局部变量)闭包的作用:延长
- 下面开始构造HTTP数据包,IP层和TCP层使用python的Impacket库,http内容自行填写。#!/usr/bin/env pyt
- 人工智能有多火,相信铺天盖地的新闻已经证实了这一点,不可否认,我们已经迎来了人工智能的又一次高潮。与前几次人工智能的飞跃相比,这一次人工智能
- YAML是一种直观的能够被电脑识别的的数据序列化格式,容易被人类阅读,并且容易和脚本语言交互。YAML类似于XML,但是语法比XML简单得多