uniapp實作錨點跳轉的方法:將uniapp的【uni.createSelectorQuery()】方法與【uni.pageScrollTo(OBJECT)】方法結合使用即可。
本教學操作環境:windows7系統、uni-app2.5.1版本,Dell G3電腦。
推薦(免費):uni-app開發教學
#uniapp實作錨點跳轉的方法:
將uniapp的uni.createSelectorQuery()
方法與uni.pageScrollTo(OBJECT)方
法結合使用
核心代碼
//从当前位置到达目标位置 uni.createSelectorQuery().select('.comment-content').boundingClientRect(data=>{//目标位置的节点:类或者id uni.createSelectorQuery().select(".arc-content").boundingClientRect(res=>{//最外层盒子的节点:类或者id uni.pageScrollTo({ duration: 100,//过渡时间 scrollTop:data.top - res.top ,//到达距离顶部的top值 }) }).exec() }).exec();
程式碼範例
<template> <view class="arc-content" id="arc-content"> <view class="info-content">文章区域。。。</view> <view class="comment-content" id="comment-content">评论区域。。。</view> </view> </template> togglePosition(){ if(this.positionSelect){ this.positionSelect=false //从评论区域回到顶部 uni.createSelectorQuery().select('.comment-content').boundingClientRect(data=>{//目标位置的节点:类或者id uni.createSelectorQuery().select(".arc-content").boundingClientRect(res=>{//最外层盒子的节点:类或者id uni.pageScrollTo({ duration: 100,//过渡时间 scrollTop:res.top - data.top ,//返回顶部的top值 }) }).exec() }).exec(); }else{ this.positionSelect=true //从当前位置到达评论区域 uni.createSelectorQuery().select('.comment-content').boundingClientRect(data=>{//目标位置的节点:类或者id uni.createSelectorQuery().select(".arc-content").boundingClientRect(res=>{//最外层盒子的节点:类或者id uni.pageScrollTo({ duration: 100,//过渡时间 scrollTop:data.top - res.top ,//到达距离顶部的top值 }) }).exec() }).exec(); } },
相關免費學習推薦:程式設計影片
以上是uniapp如何實現錨點跳轉的詳細內容。更多資訊請關注PHP中文網其他相關文章!