Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Выключение обработчиков события из элемента, добавление и удаление необх-х событий 
:(
    Опции темы
numerovan
Дата 14.6.2010, 13:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 549
Регистрация: 1.12.2007

Репутация: нет
Всего: 2



Наткнулся на такую проблему - добавление и удаление обработчиков в необходимый момент.
Как это сделать пока не знаю.
Многие показывают пример, который расположен вот тут http://javascript.ru/tutorial/events/crossbrowser.
Делаю вроде как там написанно, но ни чего не получается.
Код

<div class="div_for_small_pic" numberofphoto="id" onClick="Event.remove(this, 'click', function(){});"></div>

Может есть какой нибудь хороший способ это осуществить, желательно кроссбраузерный.
PM MAIL   Вверх
нуп
Дата 14.6.2010, 16:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ботокодер
**


Профиль
Группа: Участник
Сообщений: 987
Регистрация: 22.6.2009
Где: Кременчуг

Репутация: 12
Всего: 33



на jquery есть bind/unbind
PM MAIL   Вверх
ksnk
Дата 14.6.2010, 16:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 48
Всего: 386



numerovan, зачем это нужно? Какая задача решается? Используются ли какие-нибудь js-библиотеки?




--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
ex3c
Дата 14.6.2010, 17:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 22.5.2010

Репутация: нет
Всего: 1



numerovan, detachEvent/removeEventListener.
PM MAIL   Вверх
numerovan
Дата 14.6.2010, 17:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 549
Регистрация: 1.12.2007

Репутация: нет
Всего: 2



Цитата

на jquery есть bind/unbind 

bind/unbind хорошие функции конечно, но душа что-то к ним не лежит. Bind имеет свойство присоединять к себе события, как писалось в литературе может несолкько click-ов к себе присоединить.
Хотелось бы узнать как это делать (удалять/присоединять события) без помощи jQuery.

Цитата

зачем это нужно? Какая задача решается? Используются ли какие-нибудь js-библиотеки?

Узнать как можно сделать подобное через сам яваскрипт.
Задача такая - сделать следующее, в коде пропишу...
Код

<div class="div_for_small_pic" numberofphoto="id" onClick="вырубить все клики из обёрнутого набора; выполнить действие; снова включить возможность кликов"></div>

Цитата

numerovan, detachEvent/removeEventListener. 

эти фунции на всех браузерах будут работать ? Помоему нет.

Это сообщение отредактировал(а) numerovan - 14.6.2010, 17:57
PM MAIL   Вверх
ksnk
Дата 14.6.2010, 18:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 48
Всего: 386



Цитата(numerovan @  14.6.2010,  17:56 Найти цитируемый пост)
эти фунции на всех браузерах будут работать ?

detachEvent будет работать на части броузеров, на остальной части будет работать removeEventListener. Написать функцию, которая будет таки вызыватся кроссброузерно - дело 3-х строк. 
Однако!
Обе эти функции могут снять ранее установленный обработчик событий, но только в случае если известна функция, которая ставилась как обработчик. если функция-обработчик неизвестна - снять обработчик нельзя.
Так что можно написать некую обертку над событиями, которая сохраняет и факт установки события на елемент и функцию и получить возможность удалять все ранее установленное скопом. Так поступает jQuery, так поступает и объект Event из примера.
Так что задачи, насколько я понял пока - это не решит.

Есть, правда, мысль о том, что в результате клонирования элемента установленные на JS обработчики событий не клонируются и сбрасываются, но эту мысль надо бы проверить 


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0478 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.