MT
Maria Tolkacheva

почему джаваскрипт по onclick срабатывает, а так нет?

document.getElementsByClassName('cl0')[0].onkeydown=function(){
фдуке (66);

}

Ви
Ви

Так - это как?
В head вставляете и в него этот код - и тогда он не работает?

Дело в том, что выполняется до того, как DOM (html) успевает загрузиться, а пока DOM не загружен, document.getElementsByClassName ничего не возвращает.

Используйте в этом скрипте событие window.onload - оно срабатывает, когда DOM уже загружен.

EG
Ekaterina Gridneva

Потому что без onclick
скрипт не знает, когда он должен сработать.

Необязательно именно
onclick. Можно написать другой вариант - например, чтоб сработал как только загрузится документ, или по сигналу таймера, или в определенный день и час.
Но как-то указать это надо, чтоб скрипт срабатывал, когда нужно.

А
onclick - для скриптов, которые должны сработать только после нажатия кнопки.
Например, есть кнопка Зарегистрироваться.

Один юзер хочет регистрироваться. Нажал - перед ним всплыло окошко с формой.

А другой не хочет и кнопку не нажимает, и если это окошко все равно всплывет. загораживая контент, он будет недоволен.

ММ
Мария Мерс

onkeydown - не для мышки 🙂
onmousedown - вот для нажатия кнопок мыши

Похожие вопросы
есть input в html с собитием onclick="test("add",2)", как при помощи JQuery изменить событие на onclick="test("del",2)"
Подскажите по джаваскрипт
кто придумал что пхп изучать намного легче чем джаваскрипт? джаваскрипт вобще лёгкий, а пхп марока, тока ечё легко)
secet JS не срабатывает onclick
почему не срабатывает код по книги делаю ява скрипт? +
Как на 1 кнопку добавить два onclick=""
джаваскрипт alert(0101); почему 65 выводит, даже если это двоичное число?
почему у меня дом в джаваскрипт только на 0 срабатывает? +
Почему у вас это срабатывает а у нас не срабатывает?
Программисты, признавайтесь! Джаваскрипт алертами дебажили?