HTML:
<view v-if="showTopBtn==1" class="topClass" @click="Totop">
<up-icon name="arrow-upward" color="#ffffff" size="28"></up-icon>
</view>
JS:
import {
reactive,
ref
} from 'vue';
let showTopBtn = ref(0)
onPageScroll((e) => {
console.log('页面滚动距离:', e.scrollTop);
if (e.scrollTop > 600) {
showTopBtn.value = 1
} else {
showTopBtn.value = 0
}
})
//滚动到页面的目标位置
function Totop() {
uni.pageScrollTo({
scrollTop: 0, //滚动到页面的目标位置
duration: 300
});
}
css:
.topClass {
position: fixed;
bottom: 120rpx;
right: 30rpx;
background-color: rgba(0,0,0,0.5);
padding: 20rpx;
width: 44rpx;
height: 44rpx;
display: flex;
justify-content: center;
align-items: center;
border-radius: 40rpx;
}