Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Как правильно прицепить обработку события (https://javascript.ru/forum/events/26604-kak-pravilno-pricepit-obrabotku-sobytiya.html)

slowklg 14.03.2012 17:58

Как правильно прицепить обработку события
 
Здравствуйте
Подскажите, как правильно прицепить обработку события (например mouseover), чтобы была возможность передать в обработчик параметр?
Т.е. если я в хтмл могу указать: <div id='el1' onmouseover('myFunc(event, 2)')></div>
как мне сделать, не в хтмл а js?

elem = document.getElementById('el1');
elem.onmouseover = myFunc

function myFunc(event, par1){
--------
};

Как передать параметр?

nerv_ 14.03.2012 18:47

http://learn.javascript.ru/introduction-browser-events

slowklg 14.03.2012 19:10

Статью читал (возможно не увидел? укажите пальцем, плиз)
при назначении обработчика хоть через on<событие>, хоть через addevent
я могу указать только обработчик без параметров?

elem = document.getElementById('el1');

elem.onmouseover = myFunc

function myFunc(event, par1){
--------
};

с параметром только через хтмл?

nerv_ 15.03.2012 13:26

slowklg, а Вы дальше статьи почитайте :) Какие параметры собрались передавать?

slowklg 15.03.2012 15:11

очень плохо мы воспитываем нашу молодёжь я знаю DOM:(

Вообще задумка была такая:
на странице есть несколько однотипных элементов с разным фоном и надписями, но одинакового размера и пр.(шрифты, поля...)
при наведении мыши фон меняется (для каждого элемента свой)

я хотел передать в обработчик индекс элемента, по которому его свойства можно определить, и не хотел плодить анонимных функций

и это вместо того, чтобы получить айди от эвенттаргета (facepalm)

nerv_ 15.03.2012 15:33

slowklg, Делегирование событий. Если не получится, давайте верстку (пример).

slowklg 15.03.2012 16:20

2nerv_:
спасибо, я так примерно и сделал, хоть и не знал, что это так называется:)


Часовой пояс GMT +3, время: 13:50.