以下のような、STARTボタンを押した後にSTARTボタンがSTOPボタンに切り替わるスクリプトを組みました。
JavaScript
<body> <div class="container"> <p id="timer">00:00:00</p> <div> <button id='start_stop' class="btn btn-lg btn-primary">START</button> </div> </div> <script> var startClick = function() { start = new Date(); var seconds = start.getSeconds(); var minutes = start.getMinutes(); var hours = start.getHours(); this.innerHTML = "STOP"; document.getElementById('timer').innerHTML = hours + ':' + minutes + ':' + seconds; } document.getElementById('start_stop').addEventListener('click', startClick, true); </script> </body>
この上記のスクリプトでstartClick関数内で、this.innerHTML = "stop"; と定義しているのですが、
このコードのthisがdocument.getElementById('start_stop') を参照しているように感じるのですが、
なぜ、thisがdocument.getElementById('start_stop') を参照しているのかがわかりません。
なぜ、startClick関数内でthis.innerHTML = "stop"; と定義しているのにthisがdocument.getElementById('start_stop') を参照しているのでしょうか?
まだ回答がついていません
会員登録して回答してみよう