Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.09.2014, 18:43
Кандидат Javascript-наук
Отправить личное сообщение для jeysmook Посмотреть профиль Найти все сообщения от jeysmook
 
Регистрация: 24.04.2012
Сообщений: 118

Повесить событие на еще не созданный елемент
Подскажите пожалуйста, как можно повесить событие "CLICK", на еще не созданный елемент? Т.е. как сделать функцию похожую на live() в фреймворке Jquery, но только без использования самого фреймворка?
Ответить с цитированием
  #2 (permalink)  
Старый 06.09.2014, 17:57
Аватар для ixth
Профессор
Отправить личное сообщение для ixth Посмотреть профиль Найти все сообщения от ixth
 
Регистрация: 19.01.2010
Сообщений: 354

Зачем лепить велосипед, если уже есть готовая функция?
Ответить с цитированием
  #3 (permalink)  
Старый 06.09.2014, 23:02
Аватар для BETEPAH
Профессор
Отправить личное сообщение для BETEPAH Посмотреть профиль Найти все сообщения от BETEPAH
 
Регистрация: 23.06.2011
Сообщений: 1,165

<script>function live (eventType, elementId, cb) {
    document.addEventListener(eventType, function (event) {
        var el = event.target, found;
        while (el && !(found = el.id === elementId)) {
            el = el.parentElement;
        }
        if (found) {
            cb.call(el, event);
        }
    });
}

live("click", "test", function (event) {
    alert(this.id);
});
setTimeout(function() {
    var div = document.createElement('div');
    div.id = 'test';
    div.innerHTML = 'click me';
    document.body.appendChild(div);
}, 500)</script>
Ответить с цитированием
  #4 (permalink)  
Старый 07.09.2014, 11:32
Кандидат Javascript-наук
Отправить личное сообщение для jeysmook Посмотреть профиль Найти все сообщения от jeysmook
 
Регистрация: 24.04.2012
Сообщений: 118

BETEPAH, Спасибо большое.
ixth, Для понимания.
Ответить с цитированием
  #5 (permalink)  
Старый 07.09.2014, 15:25
Аватар для ixth
Профессор
Отправить личное сообщение для ixth Посмотреть профиль Найти все сообщения от ixth
 
Регистрация: 19.01.2010
Сообщений: 354

Черт. Я сначала решил, что ее нужно сделать «в фреймворке Jquery, но только без использования самого фреймворка».
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добовление формы еще Kuklavod jQuery 2 03.11.2011 15:12
Как правильно подавить событие при подключении своего обработчика? Маэстро Firefox/Mozilla 2 03.09.2011 11:46
Как повесить обработчик на событие "вызов функции"? stopkran Общие вопросы Javascript 30 01.01.2011 09:11
Добавить на canvas еще один елемент greengarlic Общие вопросы Javascript 5 22.09.2010 10:16
глюк форума Gvozd Сайт Javascript.ru 11 18.03.2009 14:37