![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| numerovan |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 549 Регистрация: 1.12.2007 Репутация: нет Всего: 2 |
Наткнулся на такую проблему - добавление и удаление обработчиков в необходимый момент.
Как это сделать пока не знаю. Многие показывают пример, который расположен вот тут http://javascript.ru/tutorial/events/crossbrowser. Делаю вроде как там написанно, но ни чего не получается.
Может есть какой нибудь хороший способ это осуществить, желательно кроссбраузерный. |
|||
|
||||
| нуп |
|
|||
|
Ботокодер ![]() ![]() Профиль Группа: Участник Сообщений: 987 Регистрация: 22.6.2009 Где: Кременчуг Репутация: 12 Всего: 33 |
на jquery есть bind/unbind
|
|||
|
||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 48 Всего: 386 |
numerovan, зачем это нужно? Какая задача решается? Используются ли какие-нибудь js-библиотеки?
-------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| ex3c |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 32 Регистрация: 22.5.2010 Репутация: нет Всего: 1 |
numerovan, detachEvent/removeEventListener.
|
|||
|
||||
| numerovan |
|
||||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 549 Регистрация: 1.12.2007 Репутация: нет Всего: 2 |
bind/unbind хорошие функции конечно, но душа что-то к ним не лежит. Bind имеет свойство присоединять к себе события, как писалось в литературе может несолкько click-ов к себе присоединить. Хотелось бы узнать как это делать (удалять/присоединять события) без помощи jQuery.
Узнать как можно сделать подобное через сам яваскрипт. Задача такая - сделать следующее, в коде пропишу...
эти фунции на всех браузерах будут работать ? Помоему нет. Это сообщение отредактировал(а) numerovan - 14.6.2010, 17:57 |
||||||||
|
|||||||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 48 Всего: 386 |
detachEvent будет работать на части броузеров, на остальной части будет работать removeEventListener. Написать функцию, которая будет таки вызыватся кроссброузерно - дело 3-х строк. Однако! Обе эти функции могут снять ранее установленный обработчик событий, но только в случае если известна функция, которая ставилась как обработчик. если функция-обработчик неизвестна - снять обработчик нельзя. Так что можно написать некую обертку над событиями, которая сохраняет и факт установки события на елемент и функцию и получить возможность удалять все ранее установленное скопом. Так поступает jQuery, так поступает и объект Event из примера. Так что задачи, насколько я понял пока - это не решит. Есть, правда, мысль о том, что в результате клонирования элемента установленные на JS обработчики событий не клонируются и сбрасываются, но эту мысль надо бы проверить -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |