Повесить событие на еще не созданный елемент
Подскажите пожалуйста, как можно повесить событие "CLICK", на еще не созданный елемент? Т.е. как сделать функцию похожую на live() в фреймворке Jquery, но только без использования самого фреймворка?
|
Зачем лепить велосипед, если уже есть готовая функция?
|
<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>
|
BETEPAH, Спасибо большое.
ixth, Для понимания. |
Черт. Я сначала решил, что ее нужно сделать «в фреймворке Jquery, но только без использования самого фреймворка».
|
| Часовой пояс GMT +3, время: 08:41. |