закройте Shadowbox изнутри iframe, используя 2 метода - PullRequest
2 голосов
/ 16 сентября 2011

Я уже искал SO для подобных вопросов, и ни один из методов не работал для меня.
У меня есть shadowbox, который открывается по щелчку как:

<a href="/form/foo" rel="shadowbox;height=400;width=510">Open</a>

Это прекрасно работаети мои формы лучше всего работают с этим методом (т.е. я могу легко закрыть свои формы, используя

window.parent.Shadowbox.close();

Проблема. У меня есть страница с данными ajax, и я хотел загрузить shadowbox для этого "будущего"элементы, я думал сделать это с помощью функции делегата jquery.

// Open our form manually
$('body').delegate("#video-form-edit", "click", function(e){
          e.preventDefault();
          var url = $(this).attr('href'); // Our URL
          Shadowbox.open({
                content:    url,
                player:     "iframe",
                height:     400,
                width:      510
            });
});

// If I want to close ^ this ^ shadowbox, how do i do it?
// window.parent.Shadowbox.close(); // Doesnt work

Проблема заключается в том, что я не могу закрыть форму, открытую с помощью метода делегата, с использованием вышеупомянутого «внешнего» загруженного теневого блока,
Это лучший способ сделать это? Как закрыть shadowbox, загруженный с использованием методов делегата.

РЕДАКТИРОВАТЬЯ получаю сообщение об ошибке Не могу вызвать метод 'close' из неопределенного.РЕДАКТИРОВАТЬ 2 Хорошо, так как ответа нет, я обнаружил, что могу использовать:

parent.window.location = parent.window.location.href;

Для перенаправления в родительское окно, хотя это не то, что я ищу, это может быть решением для кого-то.

1 Ответ

0 голосов
/ 17 сентября 2011

Дух .. Я не могу поверить, что никто не понял !, 18 часов спустя ..
Мне нужно было изменить идентификатор на класс
Изменить $('body').delegate("#video-form-edit", "click", function(e){
До -----> $('body').delegate(".video-form-edit", "click", function(e){
А также в моем ахрефе.

Теперь все работает как обычно во всех моих теневых окнах, для всех элементов сейчас или в будущем.

...