勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

JavaScriptのリッチなalert / confirmぽいウィンドウを表示する「sweetalert2」の利用方法

  JavaScript

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

  関連記事

formで複数選択可能なセレクトメニュー(プルダウン)を実装する方法(select2)

フォームで複数選択可能なセレクトボックス(プルダウン)を実装したい。ただHTML ...

JavaScriptのマップ用ライブラリ「MapLibre GL JS」の利用方法

あるサイトをWappalyzerで調査していた際に「MapLibre GL JS ...

JavaScriptのライブラリ「crypto-js」を使用して暗号化・復号化・ハッシュ化する方法

JavaScriptにてCookie等にデータを保存する際に暗号化したものを保存 ...

JavaScriptの「Day.js」ライブラリで日付の比較を行う方法

JavaScriptの日時・時刻用ライブラリ「Day.js」を用いて日付の比較を ...

JavaScriptにて「QRCode.js」ライブラリを利用してQRコードを生成する方法

PHPが使えない環境で動的にQRコードを生成したかった。以前にメモしたAPI等の ...