ホームページ > ウェブフロントエンド > jsチュートリアル > Reactでアンカースクロールを実装する方法

Reactでアンカースクロールを実装する方法

王林
リリース: 2020-12-23 10:56:43
転載
3605 人が閲覧しました

Reactでアンカースクロールを実装する方法

ヒント:

アンカー スクロールを実装するには、ルーティング ジャンプが発生するため、a タグを使用しないでください。

(学習ビデオ共有: 反応ビデオ チュートリアル)

ここでは H5 の新しい API、scrollToAnchor が使用されています

タグを使用する以前の方法:

<a href=&#39;#activity1&#39;></a>    //定义锚点
<div name=&#39;activity1&#39;></div>   //跳转到的锚点
但是在单页面中,这样会进行前端路由的修改
ログイン後にコピー

scrollToAnchor API を使用して変更します

<a onClick={() => this.scrollToAnchor(name)}></a>    //定义锚点

<div id=&#39;activity1&#39;></div>   //跳转到的锚点
//函数定义
scrollToAnchor = (anchorName) => {
    if (anchorName) {
        // 找到锚点
        let anchorElement = document.getElementById(anchorName);
        // 如果对应id的锚点存在,就跳转到锚点
        if(anchorElement) { anchorElement.scrollIntoView({block: &#39;start&#39;, behavior: &#39;smooth&#39;}); }
    }
  }
ログイン後にコピー

block: アンカー ポイントの上部または下部へのスクロールを示します。start/end

behavior: スクロールの効果を示します。 auto/instant/smooth (スクロール効果)

1. アンカー ポイントの従来の name 属性を id 属性に変更します。このようにして、 document.getElementById メソッドを使用してアンカー ポイントを簡単にクエリできます。

2. 元の赤いボタンの href 属性を削除し、onClick メソッドを追加します。 onClick メソッドはアンカー ポイントの ID を渡し、次の関数を使用してアンカー ポイントを検索し、アンカー ポイントにジャンプします。

関連する推奨事項: 反応チュートリアル

以上がReactでアンカースクロールを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:csdn.net
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート