JavaScriptのリッチなalert / confirmぽいウィンドウを表示する「sweetalert2」の利用方法
JavaScriptのalert / confirmはブラウザによって表示位置やデザインが異なる。また、そもそもの見た目(デザイン)も少々気になるところ。この辺りを解決できないか調べたところ「sweetalert2」というライブラリで対応できそう。以下に利用方法をメモ。
sweetalert2
公式サイト
https://sweetalert2.github.io/
デモページ
https://sweetalert2.github.io/#examples
CDN
CDNで使う場合は以下を記述する。
<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">
サンプル
https://taitan916.info/sample/sweetalert2/
利用方法
ソースコード
<button id="alert" type="button" class="button-class">alert</button> <button id="confirm" type="button" class="button-class">confirm</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(`alertテスト`); } document.getElementById(`confirm`).onclick = function() { Swal.fire({ title: `confirmテスト`, showDenyButton: true, confirmButtonText: `Yes`, denyButtonText: `No` }).then((result) => { if( result.isConfirmed ){ Swal.fire(`Yesをクリックしました。`); }else if (result.isDenied){ Swal.fire(`Noをクリックしました。`); } }); } </script>
解説等
バニラJS対応ライブラリのため「document.getElementById」としているが、もちろんjQueryを導入して「$(`#alert`).on('click',~~)」という形でも問題無し。
また、各種パラメータについてはこちらのページを参照すること。
関連記事
-
-
JavaScriptにて数値のカウントアップ及びカウントダウンを表示する「countUp.js」ライブラリの利用方法
だいぶ前にバニラJSにて数値のカウントアップ及びカウントダウン表示を行う方法をメ ...
-
-
ページ内のスクロールバーを見やすく且つ異なるブラウザ間でも同じデザインにする「SimpleBar」ライブラリの利用方法
CSSのoverflowでスクロールバーを設置した際、ブラウザによってデザイン( ...
-
-
JavaScriptでCookieを取り扱う「js-cookie」ライブラリの利用方法
「jquery-cookie」プラグイン開発終了に伴い「js-cookie」ライ ...
-
-
バニラJavaScriptでリッチなセレクトメニュー(プルダウン)を実装できる「Choices.js」の利用方法
サジェストや複数選択等、機能付きのセレクトメニュー(プルダウン)を実装する際、今 ...
-
-
jQueryの通知メッセージ用ライブラリ「Toastr」の利用方法
あるサイトのソースコードを拝見しているとToastrというJSファイルをCDNで ...