30秒間実行され、0になったメッセージを表示するシンプルなJavascriptタイマー。pageloadではなくボタンを押したときに開始する方法がわかりません。すべてのヘルプは:)ページロードから開始する修正タイマー
<script type="text/javascript">
var sec = 30; // set the seconds
var min = 00; // set the minutes
function countDown() {
sec--;
if (sec == -01) {
sec = 59;
min = min - 1;
} else {
min = min;
}
if (sec<=9) { sec = "0" + sec; }
time = (min<=9 ? "0" + min : min) + " min and " + sec + " sec ";
if (document.getElementById) { theTime.innerHTML = time; }
SD=window.setTimeout("countDown();", 1000);
if (min == '00' && sec == '00') { sec = "00"; window.clearTimeout(SD); alert("Too slow."); }
}
function addLoadEvent(func) {
var oldonload = window.onload;
if (typeof window.onload != 'function') {
window.onload = func;
} else {
window.onload = function() {
if (oldonload) {
oldonload();
}
func();
}
}
}
addLoadEvent(function() {
countDown();
});
</script>
ここでは、問題を分析して解決策*を設計する必要があります。すぐにコーディングを開始しないでください。上に示したようなコードになります。コードを確認し、冗長部分をすべて削除してください。あなたはここであなた自身のために物事をはるかに難しくしています。カウントダウンタイマーに関するチュートリアルがたくさんありますが、あなたのものほど複雑ではありません。 ;) –