![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| Elfet |
|
||||
![]() Белый и Пушистый ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 3776 Регистрация: 2.4.2003 Репутация: нет Всего: 16 |
Всем привет!
Такая проблема у меня возникла: я получаю по ajax html код который вставляю на страницу, только на этот код должны быть навешаны определённые события. Как такое можно сделать? Пример:
На второй добавленный div уже никаких событий не происходит. В jQuery это можно решить с помощью live( type, fn ) :
только мне это не подходит, так как live ещё не поддерживает этих событий: blur, focus Как реализовать самому такое? Заранее спасибо! |
||||
|
|||||
| mxt |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 133 Регистрация: 6.9.2007 Репутация: нет Всего: 1 |
поставь на контейнер отлов нужных событий,
а потом уже по css классам (или другими параметрами) смотри что делать с этим элементом Это сообщение отредактировал(а) mxt - 9.8.2009, 14:10 --------------------
|
|||
|
||||
| Elfet |
|
|||
![]() Белый и Пушистый ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 3776 Регистрация: 2.4.2003 Репутация: нет Всего: 16 |
Как? Добавлено через 1 минуту и 19 секунд Как я прочитал в делегировании событий вообще нельзя использовать blur, focus. |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 11 Всего: 142 |
Здесь одна кнопка создаёт поле, а вторая добавляет обработчики событий фокус и блар.
-------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| Elfet |
|
|||
![]() Белый и Пушистый ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 3776 Регистрация: 2.4.2003 Репутация: нет Всего: 16 |
diadiavova, ок, спасибо. А если нужно создать несколько объектов и не по id, а по классу?
|
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 11 Всего: 142 |
Просто надо перебрать все элементы и проверить имя класса в каждом, в зависимости от результата проверки назначить обработчики.
-------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxt |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 133 Регистрация: 6.9.2007 Репутация: нет Всего: 1 |
если к примеру слишком много элементов, то это не пойдет.
просто ставишь отлов событий на контейнер, а потом через event.originalTarget || event.srcElement; узнаешь на каком элементе произошло событие. а далее по классу можно делать то что нужно --------------------
|
||||
|
|||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 11 Всего: 142 |
Это ещё почему? -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxt |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 133 Регистрация: 6.9.2007 Репутация: нет Всего: 1 |
тут дело не только в переборке элементов, а в самой сути добавления отлова событий для каждого элемента (если их много)
--------------------
|
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 11 Всего: 142 |
mxt, не понял
Добавлено через 1 минуту и 12 секунд -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxt |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 133 Регистрация: 6.9.2007 Репутация: нет Всего: 1 |
такой подход лучше всего использовать когда нужно у очень большого количества элементов отлавливать события --------------------
|
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 11 Всего: 142 |
Вообще-то я хотел увидеть пример, в котором предложенный мной метод может вызвать проблемы.
-------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxt |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 133 Регистрация: 6.9.2007 Репутация: нет Всего: 1 |
проблема в том, что будет повешано много обработчиков событий.
Добавлено через 29 секунд + в моем случае, не нужно делать лишних действий после добавления элемента в контейнер. --------------------
|
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 11 Всего: 142 |
На сколько я понял задача состоит в том, чтобы обработчики были одни и те же. Мне кажется, что мы просто друг друга не понимаем. Я думаю, что если бы ты привёл пример кода, в котором появятся описанные проблемы, мы поняли бы друг друга намного быстрее. Пока я вообще не понял о чём речь. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxt |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 133 Регистрация: 6.9.2007 Репутация: нет Всего: 1 |
--------------------
|
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |