jQueryにて何らかの処理中にブラウザをロックする「Block UI」プラグインの利用方法
2024/08/29
jQueryにて何らかの処理中、ユーザーによるクリックや入力等の動作を防ぎたかった。調べたところjQuery BlockUIというプラグインが導入が簡単みたい。以下にサンプルと利用方法をメモ。
サンプル
https://taitan916.info/sample/jquery_block_ui/
ボタンをクリックするとブラウザ上で他の動作が行えなくなり、2秒後に解除される点が確認できる筈。
Block UI
公式サイト
https://jquery.malsup.com/block/
CDN
CDNで使う場合は以下を記述する。
<script type="text/javascript" src="https://code.jquery.com/jquery-3.7.1.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.blockUI/2.70/jquery.blockUI.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.blockUI/2.70/jquery.blockUI.js"></script>
利用方法
ソースコード
<style> .msg{ margin: 20px; } </style> <button id="btn">button</button> <script type="text/javascript" src="https://code.jquery.com/jquery-3.7.1.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.blockUI/2.70/jquery.blockUI.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.blockUI/2.70/jquery.blockUI.js"></script> <script> $(function(){ $(`#btn`).on(`click`, function(){ const option = { message: `<div class="msg">只今処理中のため、<br>ページを閉じずにお待ちください</div>`, } $.blockUI(option); //2秒後に解除 setTimeout(() => { $.unblockUI(); }, 2000); }); }); </script>
注意点
上記ソースコードはサンプルのため2秒後に解除しているが、本来であれば何らかの処理終了後に「$.unblockUI()」で解除すること。
関連記事
-
-
jQueryからAjax経由でPHPにリクエストしCookieを操作する方法
先日PHPでCookie保存時にHttpOnly / Secure属性を設定する ...
-
-
SortableJSを使ってデータの並べ替え&保存
あるシステムを拝見した際にtableタグ内に並んでいる項目をドラッグ&ド ...
-
-
「slick」でブラウザ幅がPCの場合はスライダーを表示し、スマホ幅の場合はスライダー無しにする方法
slickプラグインで画像スライダーを設置しているページがあり、PCのブラウザ幅 ...
-
-
ajaxのエラー詳細を取得する
success or errorで分岐処理はできるけど、 エラー詳細取れないの? ...
-
-
jQueryの「DateTimePicker」プラグインで日付や時間選択時に指定したイベントを実行させる方法
jQueryの「DateTimePicker」プラグインで日付や時間選択時、あら ...