Несколько событий(onmouseover), одна функция. Передача объекта события.
Есть ли возможность получить объект события?
К примеру
lolka.onmouseover = function ()
{
alert(lolka);
}
Этот код даст одну функцию для одного объекта. Т.е. если есть 50 объектов, код будет непомерным. С другой же стороны, сделай я так:
lolka.onmouseover = lolkaAlert(this);
function lolkaAlert(OBJ) {
alert(OBJ);
}
Ничего не получится, OBJ будет равен null, в этом случае. Объект у меня div, кстати. |
target || srcElement
|
Пытаюсь сделать так:
menu.onmouseover = show(event.target);
function show (OBJ)
{
target undefined. :( |
Все, додумался с target, сделал.
Подскажите пожалуйста, а в javascript есть некое подобие классов? Хотелось бы создать класс для к примеру плавного выезжания кнопок меню, да вот не знаю, возможно ли это. Суть в том, что если пользоваться двумя функциями, тут происходит конфликт в переменной timer для setinterval-а. Я его в каждой функции (show, hide) очищаю, а после назначаю новый setInterval. Но тут происходит колнфликт. Чтобы передавать из функции в функцию переменную timer, ее надо объявить вне их, просто в <script></script>. Но(!), тогда будет одна переменная timer на всех выезжающие объекты, что воспроизведет кучу глюков. (обращение к одной переменной куч функций, и очистка ее же. получается, быстро двинул мышкой по меню - многие остановились, или быстро дергаться стали). Подобие класса было бы отлично. К примеру класс MenuMovable. В нем своя переменная timer и свои две функции. И конечно же своя пустая переменная для объекта. Достаточно было бы создать класс и в него кинуть объект. Я просто знаком с ActionScript, ориентируюсь пока что по нему, изучая JavaScript. |
Цитата:
|
| Часовой пояс GMT +3, время: 19:33. |