zoukankan      html  css  js  c++  java
  • uni-app回到顶部功能(组件)

    图示

    在components文件夹下新建back-top/back-top.vue,写入以下代码

    <template>
    	<view v-if="scrollTop>400" class="backTop" :class="{'mescroll-fade-in':isShowToTop}" @click="toTopClick">
    		<text class="iconfont iconjiantou4" style="color: #fff;font-size:40rpx"></text>  <!-- 此处为iconfont图标,可根据自己项目设置 -->
    	</view>
    </template>
    
    <script>
    	export default {
    		name: "backTop",
    		props: {
    			id: {
    				type: String,
    				default: ''
    			},
    			scrollTop: {
    				type: Number,
    				default: 0
    			},
    			tab: {
    				type: Boolean,
    				default: false
    			}
    		},
    		data() {
    			return {
    				isShowToTop: true
    			}
    		},
    		methods: {
    			toTopClick() {
    				this.isShowToTop = false; // 回到顶部按钮需要先隐藏,再执行回到顶部,避免闪动
    				if (this.tab) {
    					this.$emit('setScrollTop');
    				} else {
    					uni.pageScrollTo({
    						scrollTop: 0,
    						duration: 200
    					});
    				}
    
    
    			}
    		},
    
    	}
    </script>
    
    <style>
    	.mescroll-lazy-in,
    	.mescroll-fade-in {
    		-webkit-animation: mescrollFadeIn .3s ease forwards;
    		animation: mescrollFadeIn .3s ease forwards;
    	}
    
    	.backTop {
    		z-index: 999;
    		position: fixed;
    		right: 30rpx;
    		bottom: 120rpx;
    		/* #ifdef H5 */
    		bottom: 220rpx;
    		/* #endif */
    		 100rpx;
    		height: 100rpx;
    		line-height: 100rpx;
    		border-radius: 50%;
    		transform: translateZ(0);
    		-webkit-transform: translateZ(0);
    		background-color: rgba(0,0,0,.35);
    		text-align: center;
    	}
    </style>
    
    

    在main.js中引入back-top组件

    import backTop from '@/components/back-top/back-top.vue';
    Vue.component('back-top',backTop)
    

    在页面中使用

    <template>
    	<view class="container">
    		<view class="list-content">
    			<back-top :scrollTop="scrollTopCount"></back-top>  <!-- 1、组件部分 -->
    		</view>
    	</view>
    </template>
    
    <script>
    	export default {
    		data() {
    			return {
    				scrollTopCount:0,  //2、距离顶部距离
    			};
    		},
    		
    		//3、监听滚动
    		onPageScroll(e) {
    			this.scrollTopCount = e.scrollTop;
    		},
    	}
    </script>
    

    注:以上功能实现基于插件: https://ext.dcloud.net.cn/plugin?id=1181

  • 相关阅读:
    使用Go语言两三事
    Ubuntu安装和配置redis
    samba 问题Windows能看到文件夹但是不能打开
    centos---无线上网的电脑所安装的虚拟机网络设置
    centos克隆,网卡启动失败
    redis安装及基础操作(1)
    hadoop2.6---windows下开发环境搭建
    hadoop2.6---常用命令
    虚拟机centos6.5 --hadoop2.6集群环境搭建
    虚拟机centos6.5 --开放端口
  • 原文地址:https://www.cnblogs.com/huihuihero/p/13638204.html
Copyright © 2011-2022 走看看