我有一個希望很容易的問題。我試圖在我的應用程序中創建一個JS函數,其中HTML中有一個數字,每次點擊時都會從中減去另一個數字,並顯示結果。Javascript Onclick函數只能工作一次
(到目前爲止,這麼多的作品。)
那麼行動應該是可重複的,因此數量還在不斷變得越來越小。
(這部分還沒有工作。)
最後,還有一個復位按鈕,單擊該按鈕後,可將原來的號碼隨機數。
(隨機數是正確找到,但是當你點擊減去它從原來的號碼減去,而不是從隨機選擇更換號碼。)
下面是部分加工的jsfiddle
var s = document.getElementById('incrimentOfNumber').innerHTML
\t var n = document.getElementById('countdownNumber').innerHTML
\t var n = n - s;
\t document.getElementById("countdownNumber").onclick = function updateNumber(){
\t \t this.innerHTML = n;
\t }
\t document.getElementById("resetCountdown").onclick = function resetCountdown(){
\t \t var n = Math.floor(Math.random() * 500) + 200;
\t \t document.getElementById("countdownNumber").innerHTML = n;
\t }
<h3>Count down from the number you see in incriments of <span class="incrimentOfNumber" id="incrimentOfNumber">7</span>.
\t <br />Tap the number to see the correct answer.
\t <br />Repeat as needed.
\t </h3>
<div class="countdownNumber">
\t <h1 id="countdownNumber">284</h1>
\t </div>
<div class="btn" id="resetCountdown">Reset</div>
任何人都可以(1)仔細檢查我做了什麼,以確保我沒有做的事情在一個笨方法和(2)幫助我弄清楚如何獲得可重複的操作函數的寧?
唉唉,倒退到一個被丟棄的方法。將編輯OP。 – Liz
'this.innerHTML = n'分配完全相同的'n',當頁面在'var n = n - s;'加載時計算_once_'。那'n'再也不會改變。第二個監聽器中的'var n'是一個完全不同的'n',其範圍僅限於第二個函數。事件監聽器工作正常。該代碼也不會減去任何東西。 – Xufox
我嘗試在'updateNumber'函數中放入'var n = n - s',但它只是將它變成'undefined' ... – Liz