回答編集履歴

1

調整

2022/07/26 04:15

投稿

yambejp
yambejp

スコア117702

test CHANGED
@@ -2,3 +2,33 @@
2
2
 
3
3
  それって普通のmodal処理では?
4
4
  dialogタグで実現できると思いますが
5
+
6
+ # 参考
7
+ ```javascript
8
+ <script>
9
+ window.addEventListener('DOMContentLoaded', ()=>{
10
+ const dlg=document.querySelector('dialog');
11
+ const btn=document.querySelector('[value=modal]');
12
+ btn.addEventListener('click',()=>{
13
+ dlg.showModal();
14
+ let count=0;
15
+ let tid=setInterval(()=>{
16
+ if(count<10){
17
+ console.log(count++);
18
+ }else{
19
+ clearInterval(tid);
20
+ dlg.close();
21
+ }
22
+ },200);
23
+ });
24
+ });
25
+ </script>
26
+ <dialog>
27
+ 処理中
28
+ </dialog>
29
+ <input type="button" value="test" onclick="alert('test')">
30
+ <input type="button" value="modal">
31
+ ```
32
+ 上記、コンソール上からユーザーが制御できますが、modal表示中は背後のHTML要素を
33
+ クリックさせなくすることは可能です。(testボタンが押せない)
34
+ またmodal表示中も処理が走っていることはconsoleで確認できると思います