Nov 16
Добавление обработчика события с помощью JavaScript
Есть несколько методов, но я приведу код которым пользуюсь сам. С некоей притензией на универсальность
не судите строго :). Итак:
JAVA:
-
function addHandler(object, event, handler)
-
{
-
if (typeof object.addEventListener != 'undefined')
-
object.addEventListener(event, handler, false);
-
else if (typeof object.attachEvent != 'undefined')
-
object.attachEvent('on' + event, handler);
-
else
-
throw "Incompatible browser";
-
}
Все в принципе понятно:
- object - это наш элемент;
- event - желаемое событие, к которому мы и написали обработчик
- handler - собственно функция - обработчик
Работает в IE, FF, Opera, Safari, где не работает честно говоря не нашел
Пример вызова:
JAVA:
-
var but = document.getElementById('but');
-
addHandler(but, 'mousedown', change_but_status);
Здесь, естесственно, change_but_status - функция обработчик должна быть где-то описана.
О, да, чуть не забыл, функция удаления обработчика события у элемента (параметры аналогичны):
JAVA:
-
function removeHandler(object, event, handler)
-
{
-
if (typeof object.removeEventListener != 'undefined')
-
object.removeEventListener(event, handler, false);
-
else if (typeof object.detachEvent != 'undefined')
-
object.detachEvent('on' + event, handler);
-
else
-
throw "Incompatible browser";
-
}
Послать ссылку на этот обзор другу по ICQ или E-Mail:
Разместить у себя на ресурсе или в ЖЖ:
На любом форуме в своем сообщении:
Разместить у себя на ресурсе или в ЖЖ:
На любом форуме в своем сообщении:




31 июля, 2008 в 10:23
подскажите как сделать чтобы функция change_but_status была с параметрами.. то естьчтобы можнро было передать параметры в функцию change_but_status(id)
Спасибо