序文: ウェブページを閲覧するとき、前後に移動する操作にはあまり注意を払わないかもしれません。しかし、開発するときに、ページ間を移動すると何が起こるのか、ブラウザはページ情報をどのように保存するのか、前のページに戻るときにページを再読み込みする必要があるのかなど、考えたことがありますか?多くの疑問が浮かびます。これらの問題を解決するには、まずブラウザの 1. ルートナビゲーション
history.go(-1);// 1ページ戻るhistory.go(1);// 1ページ進むhistory.go(2);// 2ページ進む// go() には back() と forward() という 2 つの短縮メソッドがあります。 history.back(); // 1ページ戻る history.forward(); // 1ページ進む
2. 履歴状態管理API(1)ハッシュチェンジイベント
(2)ポップステートイベントアクティブな履歴エントリが変更されると、 (3) history.pushState() メソッド
(4) history.replaceState() メソッド
<本文> <button onclick="handleNext()">クリックして次のページへ進みます</button><br> <button onclick="handleLast()">クリックして前のページへ移動</button><br> <スクリプト> window.onload = 関数(){ コンソールにログを記録します。 } window.addEventListener('hashchange', 関数() { console.log('ハッシュが変更されました!') }、 間違い); window.addEventListener('popstate', (イベント) => { console.log("場所: " + document.location + "、状態: " + JSON.stringify(event.state)); }); 関数handleNext() { const 状態 = { ユーザー ID: "1234", ページ: "2" } const タイトル = '2' 定数 url = 'page2.html' window.history.pushState(状態、タイトル、URL) コンソールにログを記録します。 } 関数handleLast() { const 状態 = { ユーザー ID: "1234", ページ: "21" } const title = '一' 定数 url = 'page21.html' window.history.replaceState(状態、タイトル、URL) コンソールにログを記録します。 } </スクリプト> </本文> 結果は次のとおりです。 3. 補足: URLハッシュURL の 次の図に示すように: 最後の言葉: 以下もご興味があるかもしれません:
|
<<: MySQL テーブルを返すとインデックスが無効になるケースの説明
>>: VMware IOInsight を使用して、仮想マシンのストレージ パフォーマンスの監視を改良する
目次1. GTIDの基本概念2. GTIDの利点3. GTIDの仕組み4. 従来のレプリケーションに...
Redis クラスターとはRedis クラスターは、Redis が提供する分散データベース ソリ...
弊社の Web プロジェクトの 1 つでは、新しい都市の増加によりトラフィックと DB 負荷が増加し...
目次実際のプロジェクトで遭遇する要件実装が間違っているところもある私は個人的に、実装するより良い方法...
ReactライフサイクルReactのライフサイクルを理解するのに役立つ2つの図React ライフサイ...
書き方1: sas_order_supply_month_pay セットを更新 RECEIVE_TI...
この記事の例では、JavaScriptで4桁のランダムな検証コードを生成する具体的なコードを参考まで...
MySQL で遅い SQL ステートメントを見つけるにはどうすればよいでしょうか?これは、多くの人を...
1. フロントエンドエンジニアリングの複雑さいくつかの小さなデモ プログラムを開発するだけであれば、...
目次1. 理論シリアル化可能繰り返し読み取りコミットされた読み取りコミットされていない読み取り2. ...
この記事では、JavaScriptカスタムカレンダーエフェクトの具体的なコードを参考までに紹介します...
CSS の優先順位について話す前に、CSS とは何か、CSS が何に使用されるのかを理解する必要があ...
jsx/tsxファイルを直接作成できます今回のプロジェクト構成は以下のとおりです。 vueファイルで...
実装のアイデアまず、親コンテナーを作成し、2 つの順序なしリストを使用して、柔軟なレイアウトで親コン...
1. MySQL独自のストレステストツールMysqlslap mysqlslap は、mysql に...