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()」で解除すること。
関連記事
-
-
amazon等のECサイトによくにあるアイテムの満足度を星マークで送信・表示する方法
amazon等のECサイトによくにあるアイテムの満足度を星マークかつ5段階で送信 ...
-
-
jQueryでjsonデータを処理(parseJSON)
他社が作成したシステムのちょっと改修案件があった。設置したもののどうも動かないと ...
-
-
ライブラリ等を使用せずファイルをドラッグ&ドロップでアップロードする方法
formにドラッグ&ドロップでファイルをアップロードする機能を実装する場 ...
-
-
jQuery UIでテキストボックスにサジェスト(入力補助)機能を実装する方法
メールアドレスを入力するためのテキストボックスに文字を入力すると「@yahoo. ...
-
-
IE11でフォーム送信時に二重登録される
Internet Explorer11でform送信時にデータが二重登録されると ...