Наложение инструментов Jquery не работает должным образом с динамически генерируемыми элементами

Я не знаю, является ли это известной проблемой или я просто делаю это неправильно, но когда я открываю наложение инструментов JQuery на динамически генерируемые элементы, кнопка закрытия не работает.

Пробовал 3 разные комбинации.

1.

$(document).on("click", "a[rel]", function() { $("a[rel]").overlay(); });

2.

$("a[rel]").overlay();
$(document).on("click", "a[rel]", function() { $("a[rel]").overlay(); });

3.

setting the .overlay() on document ready and in my add item event.

Есть идеи, почему кнопка закрытия не работает? Оверлей открывается просто отлично для новых элементов, просто ничего не происходит, когда я нажимаю закрыть. Ошибок консоли тоже нет.

Спасибо.

РЕДАКТИРОВАТЬ. Я создал jfiddle, но у него есть свои проблемы.

http://jsfiddle.net/TjQAQ/


person Smith    schedule 26.04.2013    source источник
comment
Создайте скрипку, чтобы мы могли воспроизвести вашу проблему.   -  person Nelson    schedule 26.04.2013
comment
Я сделал один, но я не могу работать с оверлеем. -› jsfiddle.net/TjQAQ   -  person Smith    schedule 26.04.2013
comment
Мне этого было достаточно, чтобы поработать над ответом, в качестве подсказки, если вы хотите получить ответы, попробуйте предоставить скрипки, даже нерабочие.   -  person Nelson    schedule 26.04.2013


Ответы (1)


Сделай это так:

$(document).ready(function() {
   $('#add').click( function() { 
       $('<a rel="#overlay">New Overlay Trigger</a>').appendTo('body').overlay();
   }); 

   $("a[rel]").overlay();     
});

См. рабочую скрипту.

person Nelson    schedule 26.04.2013
comment
Теперь, если я использую магистраль с шаблонами подчеркивания, как я могу это сделать? Строка, в которую я добавляю свои новые элементы: $('ul#adminSpaceImage', this.el).append(this.template(item.toJSON())); - person Smith; 26.04.2013
comment
Извините, но я забыл, что использую магистраль. Любые идеи? Еще раз спасибо за столь быстрый ответ. Я принимаю ваш ответ в любом случае. - person Smith; 26.04.2013
comment
Хорошо, я получил его на работу. Мне просто нужно было найти последний селектор и вызвать для него .overlay. Спасибо еще раз! - person Smith; 26.04.2013