jQuery события для нового созданного div

Посетитель может перетаскивать различные элементы в несколько контейнеров, которые могут сортироваться по отдельности, поэтому элементы в каждом контейнере могут быть изменены. Наконец, каждый контейнер может быть изменен. Итак, все это работает хорошо.

К сожалению, проблема возникла, когда посетитель создает новый div, который является контейнером. Этот контейнер должен иметь те же возможности, что и контейнеры, которые загружаются во время загрузки страницы. Но поскольку контейнер вновь добавлен на страницу, функции не работают.

Я пробовал разные вещи, такие как appendTo() и снова вызывал функции draggable(), resizable() и т. Д., Но все не работает.

2 ответа

Решение

Это должно работать, если вы делаете что-то вроде этого, событие будет применяться к новым элементам:

$('span').on('resize', function() { ... }); // or whatever event 'click', 'mousedown'..

var label = $(document.createElement('span'));

td.append(label);

Если у вас есть бесплатные ресурсы, используйте плагин livequery. ( https://github.com/brandonaaron/livequery)

$('.container') 
    .livequery('click', function(event) { 
        alert('clicked'); 
        return false; 
 }); 

Это будет применять ваши функции ко всем новым контейнерам.

Другие вопросы по тегам