document.getElementById('nav').onmouseover = function(event) {
var target = event.target;
if (target.className == 'menu-item') {
var s = target.getElementsByClassName('submenu');
closeMenu();
s[0].style.display='block';
}
}
Только начинаю изучать js. Чет не могу вчехлить, что передается в параметр функции event и за что отвечает функция target. То как то заумно везде написано.
Event это событие, специальный объект в свойствах которого содержится вся возможная информация об событии. Например, в свойстве target хранится ссылка на html-элемент в котором произошло событие.
При желании, внутри события можно найти и кординаты мыши и многое другое. Используйте console.dir(event); чтобы посмотреть что там вообще есть.
То есть event это не просто переменная, и там не может быть любой другой параметр типа a и к нему применено свойство - a.target. Он содержит событие которые мы создали, а свойство target показывает элемент html при наведении мыши на который событие срабатывает?
IvanS1989, в первую очередь это объект, при большом желании события можно создавать самому в специальном конструкторе. В свойствах этого объекта лежат параметры события (координаты, элемент и т. д.)
IvanS1989, объект события, передаваемый функции-обработчику может передаваться под любым именем, не обязательно только event. Но если если в аргументах указано другое название, то и в теле функции надо его соответственно использовать.