setInterval не работает, когда он находится в другой функции?

#javascript

#javascript

Вопрос:

Когда я помещаю setInterval(autoAdmit, 1000) чуть ниже функции autoAdmit(), он работает, но когда я помещаю его в операторы if другой функции, он не работает. Есть идеи о том, почему это происходит? Я не могу найти ничего плохого в этом. забыл упомянуть: часть, которая не работает, — это функция autoAdmit() . Когда я ставлю консоль.войдите в функцию, она все еще регистрируется, но то, что находится внутри цикла for, по какой-то причине не выполняется.

 let clickIntervalId = null;

function autoAdmit() {

  for (let element of document.getElementsByTagName('span')) {
    if (element.innerHTML === 'Admit') {
        console.log('There is someone waiting to join this meeting, automatically admitting them...');
        element.click();
    }
  } 

}
//setInterval(autoAdmit, 1000) (if it is placed here it works)

document.addEventListener('DOMContentLoaded', function() {
  var checkbox = document.querySelector('#auto-admit .mdc-switch__native-control');

  function isChecked() {
    if (checkbox.checked ) {
      // do this
      if(clickIntervalId) clearInterval(clickIntervalId);
        clickIntervalId = setInterval(autoAdmit, 1000); //(if it is placed here, it doesn't work)
        console.log('checked')
    } else {
      // do that
      clearInterval(clickIntervalId);
      console.log('not')
    }
  }
  checkbox.addEventListener('change', function() {
    isChecked();
  });

  function check() {
    isChecked();
  }
  setTimeout(check, 2000)
  

}

);
 

Комментарии:

1. Вы уверены, что условие возвращает true для if оператора в первую очередь?

2. @un-index ну, когда я тестирую его с помощью setInterval ниже, он работает, и я ничего не меняю между тестами, поэтому он возвращает true

3. un-index этого не спрашивает. Он спрашивает, вы уверены, что он печатает «проверено», а не «нет»?

4. @jqueryHtmlCSS Если вы внимательнее рассмотрите эти вопросы, вы увидите, что в коде OP нет ни одной из этих ошибок…

5. @jqueryHtmlCSS Их названия были похожи, но основные проблемы — нет. Если вы предполагали, что это будет началом размышлений (я не знаю, как сказать это лучше), тогда просто добавьте к нему что-то вроде » Я не знаю, связаны ли они, но проверьте их «…