Střídání atributů bez hodnot

Nechť je dán blokovaný vstup a tlačítko:

html<input id="elem" disabled>
<input id="button" type="submit">

Udělejme to, aby každé stisknutí tlačítka vedlo ke změně stavu vstupu - z blokovaného na odblokovaný a naopak. Pro začátek získejme odkazy na naše prvky do proměnných:

javascriptlet elem   = document.querySelector('#elem');
let button = document.querySelector('#button');

A nyní realizujme zamýšlené:

javascriptbutton.addEventListener('click', function() {
  if (elem.disabled) {
    elem.disabled = false;
  } else {
    elem.disabled = true;
  }
});

Úlohu však lze vyřešit menším množstvím kódu:

javascriptbutton.addEventListener('click', function() {
  elem.disabled = !elem.disabled;
});
Задание 1

Vysvětlete, jak uvedený kód funguje.

Задание 2

Dáno zaškrtávací políčko a tlačítko. Udělejte to, aby každé kliknutí na tlačítko vedlo ke změně stavu zaškrtávacího políčka.