Задать вопрос

Возможно ли открыть новое окно после получения ответа на ajax запрос и не попасть под блокировщик всплывающих окон?

Собственно требуется сделать ajax запрос, в ответе на который отдается урл и получении ответа открыть новое окно.
В данный момент код выглядит так(Jquery)
$.post("index.php", data, function( data ) {
window.open(data.url,'_blank');
},json);

Увы, открытие окна блочится поп-ап блокерами всех браузеров.
Можно ли как-то не попасть под поп-ап блокер?
  • Вопрос задан
  • 4647 просмотров
Подписаться 4 Оценить Комментировать
Решения вопроса 1
pingo
@pingo
нужно сначала открыть окошко с пустым location window.open("", параметры) воткнуть туда прелоадер, а по success аджакс запроса подменить location
работало, когда спамером работал, сейчас ненаю

ps ещё можно открыть пустое в фоне, а потом по результату запроса воткнуть данные и переместить на него фокус
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
maxaon
@maxaon
Если мне не изменяет память, то окна без блокировки можно открывать только в ответ на действия пользователя (например клик на ссылку).
Возможные варианты решения:
1. Сделайте ajax запрос синхронным.
2. Сделайте оверлей всей страницы дивом со ссылкой. При клике откроется окно.
3. Откройте окно и проконтролируйте открытие окна. Если не открылось, сообщите пользователю о том, что надо нажать. Еще раз откройте popup окно.
Ответ написан
tema_sun
@tema_sun
У меня в хроме установлен better popup blocker. Он блочит даже простые alert'ы. Так что гарантированно сделать, то что вы хотите нельзя.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы