- ベストアンサー
ボタンを一回押したら3秒間押せないようにする方法
- リンクボタンを一回押した後、3秒間は押せないようにする方法について教えてください。
- また、リンクボタンからインラインフレーム内にクリックするたび順番に別のサイトに飛ばす方法についても知りたいです。さらに、時間が経過してもボタンのクリック数がリセットされないようにしたいです。どのような実装を行えば良いでしょうか。
- 質問者は、ボタンを押すと3秒間押せないようにする方法と、リンクボタンをクリックすると順番に別のサイトに飛ぶ方法を知りたいです。さらに、リロードしてもボタンのクリック数がリセットされないようにしたいです。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 こんな感じでいかがでしょうか。 var sec = 2; var timer; function clickFunc ( btn ) { document.getElementById('btn').value = sec; btn.disabled = true; timer = window.setInterval ( function() { if ( sec > 0 ) { sec --; document.getElementById('btn').value = sec; } else { btn.disabled = false; window.clearInterval ( timer ); sec = 2; document.getElementById('btn').value = ' go '; } } , 1000 ); idx++; document.getElementById("hoge").src=urls[idx % urls.length]; document.getElementById("fuga").value=idx; }
その他の回答 (3)
- LancerVII
- ベストアンサー率51% (1060/2054)
こんにちは。 たびたびすみません。 ボタンにid=btnを追加してください。
お礼
出来ました^^ ありがとうございました♪
- LancerVII
- ベストアンサー率51% (1060/2054)
こんにちは。 例に挙げられたものに手を加えただけですのでスクリプト部分を書き換えれば動きます。 とりあえずボタンに秒数を表示しています。 表示したい場所があるならそれをbodyに書いてsecの内容をそこに書くように指定します。
お礼
出来ました^^ ありがとうございました♪
- LancerVII
- ベストアンサー率51% (1060/2054)
こんにちは。 function clickFunc(){}を以下のようにします。 function clickFunc(btn){ btn.disabled = true; window.setTimeout ( function() { btn.disabled = false }, 3000 ); idx++; document.getElementById("hoge").src=urls[idx % urls.length]; document.getElementById("fuga").value=idx; } で、ボタンのonclick="clickFunc()"を onclick="clickFunc(this);"にします。
お礼
出来ました^^ ありがとうございました♪
補足
ありがとうございます^^ 無事できました。 それとその3秒間のカウントダウンは表示できたりできないでしょうか?
お礼
出来ました^^ ありがとうございました♪
補足
どこにこれを書き込めばよいのでしょうか? また<body>間には何を書き込めばよいでしょうか?