我们在使用小程序的时候,如果下拉的内容太多,要重新往上拉回顶部的话,那么效率很低也很影响体验,因此通常有一键小程序回到顶部的功能,那么这个功能具体怎样实现呢?下面给大家分享两个实现方法。
小程序回到顶部有两种方式,分别是:
一、使用view形式的回到顶部
HTML:
<image src='../../img/button-top.png' class='goTop' hidden='{{!floorstatus}}' bindtap="goTop"></image>
CSS:
/* 返回顶部 */ .goTop{ height: 80rpx; width: 80rpx; position: fixed; bottom: 50rpx; background: rgba(0,0,0,.3); right: 30rpx; border-radius: 50%; }
JS:
// 获取滚动条当前位置 onPageScroll: function (e) { console.log(e) if (e.scrollTop > 100) { this.setData({ floorstatus: true }); } else { this.setData({ floorstatus: false }); } }, //回到顶部 goTop: function (e) { // 一键回到顶部 if (wx.pageScrollTo) { wx.pageScrollTo({ scrollTop: 0 }) } else { wx.showModal({ title: '提示', content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。' }) } },
二.使用scroll-view形式的回到顶部
<scroll-view scroll-y scroll-top='{{topNum}}' bindscroll="scrolltoupper"> <image src='../../img/button-top.png' class='goTop' hidden='{{!floorstatus}}' bindtap="goTop"></image>
CSS:
/* 返回顶部 */ .goTop{ height: 80rpx; width: 80rpx; position: fixed; bottom: 50rpx; background: rgba(0,0,0,.3); right: 30rpx; border-radius: 50%; }
JS:
data:{ topNum: 0 } // 获取滚动条当前位置 scrolltoupper:function(e){ console.log(e) let t = e.detail.scrollTop; if (t > 100 && !this.data.floorstatus) { // 避免重复setData this.setData({ floorstatus: true }); } if(t <= 100 && this.data.floorstatus){ this.setData({ floorstatus: false }); } }, //回到顶部 goTop: function (e) { // 一键回到顶部 this.setData({ topNum: this.data.topNum = 0 }); },
关于小程序回到顶部的功能的实现就介绍到这,上述方法有一定的借鉴价值,感兴趣的朋友可以参考,希望能对大家有帮助,想要了解更多大家可以关注其它的相关文章。
文本转载自PHP中文网
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。