Привязанное событие срабатывает только 1 раз при создании элемента
есть функция, которая динамически добавляет на страницу div
и к нему тут же добавляется событие "клик"
function create_div()
{
$('<div id="new_div"></div>').prependTo('body'); // новый div
$('#new_div').bind('click', alert('Клик!')); // новое событие
}
функция вызывается из кода тоже по клику <span onclick="create_div();"></span> Проблема в том, что когда элемент создаётся, тут же срабатывает и его событие, и только 1 раз. И больше не реагирует. Когда нажимаю на Спан, то создаётся div и тут же выходит Алерт "Клик!", но созданный див уже ни на что не реагирует. Я пробовал вместо bind использовать on, live, delegate - результат тот же. Что-то я видимо не так делаю...? |
Нужно передавать функцию, а не результат функции
function create_div(){
$('<div id="new_div"></div>').prependTo('body'); // новый div
$('#new_div').bind('click', function(){alert('Клик!');}); // новое событие
}
|
Dion,
так добаьте в 'click' функцию, а не результат функции |
Dion,
на всякий случай id уникально!!! |
а да... точно, чё-то я затупил :D
Извиняюсь ))) Всем спасибо :victory: |
| Часовой пояс GMT +3, время: 11:03. |