ホームページ  >  記事  >  ウェブフロントエンド  >  uniappでアンカーポイントジャンプを実装する方法

uniappでアンカーポイントジャンプを実装する方法

coldplay.xixi
coldplay.xixiオリジナル
2020-12-09 16:34:076717ブラウズ

uniapp がアンカー ポイント ジャンプを実装する方法: uniapp の [uni.createSelectorQuery()] メソッドを [uni.pageScrollTo(OBJECT)] メソッドと組み合わせて使用​​します。

uniappでアンカーポイントジャンプを実装する方法

このチュートリアルの動作環境: 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(&#39;.comment-content&#39;).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(&#39;.comment-content&#39;).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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。