Получить переменную count, а не Object Mouse Event - PullRequest
2 голосов
/ 11 января 2020

У меня есть тумблер и кнопка на странице. У меня также есть переменная с именем «count». Моя цель состоит в том, чтобы «считать» записывать количество нажатий кнопки, но ТОЛЬКО при включенном тумблере.

Вот мой код

var count = 0;
btnReset.addEventListener("click", 
    function(count) {
      if (toggle.checked == true) {
        count += 1; 
        document.getElementById('count').innerHTML=count; 
        }
  }); 

Проблема в том, что он возвращает «[object MouseEvent] 1», а не значение «count».
Как мне получить, чтобы он возвращал var считать (т.е. количество кликов при включенном переключении)? Заранее спасибо.

1 Ответ

2 голосов
/ 11 января 2020

Ваша проблема в том, что прослушиватель событий получает объект Event. Почему-то вы положили туда count и надеялись, что это будет так?

Вот правильный способ сделать это:

let count = 0;
const toggle = document.querySelector('#chkToggle');
const btn = document.querySelector('#btnCount');
const output = document.querySelector('.count');
btn.addEventListener("click", function(evt) {
    if (toggle.checked == true) {
      count++; 
      output.innerHTML = count; 
    }
});
Enabled: <input type="checkbox" id="chkToggle"><br>

<button type="button" id="btnCount">Count</button>

<div class="count">0</div>
...