sweetalert2を閉じた後、指定位置にスクロールしようとしても元の位置に戻る現象を解決する方法
sweetalert2で表示したウィンドウを閉じた後、指定位置にスクロールさせたい。ただ、そのまま書くと指定位置にスクロール後、元の位置に戻ってしまう。この点を改善させたい。以下に対応方法をメモ。
サンプル
https://taitan916.info/sample/sweetalert2/scroll/
ページ下部にボタンがあり「通常版」をクリック後、ウィンドウを閉じるとページ上部にスクロールするが、その直後元の位置に戻る筈。「改良版」だとその点が改善されている。
対応方法
ソースコード
<button id="alert" type="button" class="button-class">通常版</button> <button id="alert2" type="button" class="button-class">改良版</button> <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11.11.0/dist/sweetalert2.all.min.js"></script> <link href="https://cdn.jsdelivr.net/npm/sweetalert2@11.11.0/dist/sweetalert2.min.css" rel="stylesheet"> <script> document.getElementById(`alert`).onclick = function() { Swal.fire({ html: `通常版`, willClose: () => { window.scrollTo({ top: 0, }); } }); } document.getElementById(`alert2`).onclick = function() { Swal.fire({ html: `改良版`, returnFocus: false, willClose: () => { window.scrollTo({ top: 0, }); } }); } </script>
解説等
「returnFocus: false」のオプション設定が必要。リファレンスはこちら。
関連記事
-
jquery.cookie.jsで「$.cookie is not a function」エラー
フロントエンド側でCookieを利用したい場合jquery-cookieを用いる ...
-
jQuery UIのDatepickerでリセット(入力内容消去)ボタンの追加方法
jQuery UIのDatepickerでキーボード入力を防ぎたいためreado ...
-
YouTube埋め込み動画が再生終了したタイミングでJavaScriptの処理を実行させる方法
YouTube埋め込み動画が再生終了した際に、あらかじめ登録してあるJavaSc ...
-
JavaScriptにて電子書籍や漫画ビューア用のライブラリ「ToraViewer」の利用方法
電子書籍や漫画ビューア用を設置したい。条件としてはレスポンシブ対応していること。 ...
-
javascriptで月末日を取得
以前、PHPで月末日を取得したけれども javascriptで月末日を扱いたいケ ...