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',~~)」という形でも問題無し。
また、各種パラメータについてはこちらのページを参照すること。
関連記事
-
-
バニラJS対応(jQuery非依存)の画像遅延読み込みプラグイン「echo.js」の利用方法
あるサイトをブラウザの開発者ツールで見ていると「echo.js」と聞いたことの無 ...
-
-
表示範囲を自由に変更可能な折れ線グラフが表示できるJSライブラリ amCharts の使用方法
どこかのサイトを閲覧していた際に、恐らくはJavaScriptのライブラリで描写 ...
-
-
バニラJavaScriptでリッチなセレクトメニュー(プルダウン)を実装できる「Choices.js」の利用方法
サジェストや複数選択等、機能付きのセレクトメニュー(プルダウン)を実装する際、今 ...
-
-
ブラウザ開発者ツールの起動を検出しソースコード変更やリダイレクト設定できる「console-ban」ライブラリの利用方法
他サイトのソースコードを拝見するため開発者ツールを開こうとすると、偶に「デバッガ ...
-
-
パスワードの強度を判定できる「zxcvbn」ライブラリの使用方法
アカウントを作成するようなページで偶にパスワードの強度を判定してメーターで表示さ ...