addeventlistener не работает, событие не ожидает при клике - PullRequest
0 голосов
/ 27 января 2019

Я работаю над Javascript-упражнением для веб-страницы, и мне нужно, чтобы при нажатии на кнопку появлялась строка текста, проблема в том, что текст появляется только до того, как я нажимаю на кнопку.Все мои теги и идентификаторы верны.

document.getElementById("earth_time").setAttribute("hidden", true);
ocument.getElementById("earth_time_check").addEventListener("onclick", earthTime());
function earthTime(){
document.getElementById("earth_time").innerHTML = Date();
document.getElementById("earth_time").hidden = false;}

Ответы [ 2 ]

0 голосов
/ 27 января 2019

Проблема заключается в том, что вы пытаетесь настроить прослушиватель событий на результат вызова функции earthTime, и это эффективно undefined, потому что вы ничего не возвращаете из нее.

Правильный способ установкипрослушиватель событий:

document.getElementById("earth_time").setAttribute("hidden", true);
// earthTime is without calling brackets
document.getElementById("earth_time_check").addEventListener("onclick", earthTime);

function earthTime(){
  document.getElementById("earth_time").innerHTML = Date();
  document.getElementById("earth_time").hidden = false;
}
0 голосов
/ 27 января 2019

Ваш код выглядит нормально для меня, если только вы не допустили опечатку во второй строке кода.

document.getElementById("earth_time").setAttribute("hidden", true);
document.getElementById("earth_time_check").addEventListener("onclick", 
earthTime);

// define function earthTime
function earthTime(){
document.getElementById("earth_time").innerHTML = Date();
document.getElementById("earth_time").hidden = false;
}
...