Проблема с блокировщиком всплывающих окон в Firefox в вызове ajax успешно

0

У меня проблема с блокировщиками всплывающих окон. Я хочу открыть окно для своих пользователей только после того, как я получу некоторые данные с сервера, другими словами, мне это нужно на успех. Проблема заключается в том, что блокировщик всплывающих окон остановит окно в разделе успеха, поскольку он считает, что скрипт в настоящее время выполняется. Я использую jquery 1.7.1.min, и я попытался использовать (как вы можете видеть ниже) async: false. Но по какой-то причине это не работает. Единственная работа, которую я смог сделать, это открыть поддельное окно, и когда ответ вернется, перезапись поддельного окна. Он работает в хроме, но он создает проблемы в firefox. Нужна помощь. благодаря

function mypopup() {
    $j.ajax({
        type: 'POST',
        url: "/my/phppage",
        data: mydata,
        async: false,
        success: function (response) {
            window.open(response, 'Dialogue Message', 'width=650,height=550,left=50,top=50,location=no,status=yes,scrollbars=yes,resizable=yes');
        }
    });
    window.open("openfakewindow", 'Dialogue Message', 'width=650,height=550,left=50,top=50,location=no,status=yes,scrollbars=yes,resizable=yes');

}
Теги:
javascript-events

2 ответа

0

Почему вы не используете диалоговое окно, которое по существу является элементом, который вы идентифицируете и затем открываете?

$(document).ready(function () {
        $("#divAccountDialog").dialog(
            {
                modal: true,
                autoOpen: false,
                width: 700,
                buttons: { Cancel: function () { $(this).dialog("close"); } }
            }

        );
    });

someotherfunction() {$ ('# divAccountDialog'). dialog ('open');

0

Проблема заключается только в том, что Firefox разрешает всплывающие окна, если они созданы из генерируемого пользователем события, например событие щелчка.

Вы можете обойти это, открыв пустое окно перед вызовом Ajax, сохраните ссылку на него, а затем установите URL-адрес после завершения вызова ajax.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню