Заблокированное и незаблокированное всплывающее окно

StackOverflow https://stackoverflow.com/questions/1816127

  •  08-07-2019
  •  | 
  •  

Вопрос

Я обнаружил, что браузеры не блокируют все всплывающие окна JavaScript.

Как написать всплывающие окна на JavaScript, которые не будут блокироваться браузерами?

Я имею в виду, что является основным фактором, который имеет значение?

Это было полезно?

Решение

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

Однако вы можете использовать всплывающее окно на странице, например Диалог пользовательского интерфейса JQuery , чтобы все блокировщик всплывающих окон не может заблокировать его, потому что это просто HTML-тег, такой как span или div. Поэтому он недостаточно умен для понимания содержимого внутри всплывающего тега. Это должен быть лучший способ избежать всех блокировщиков всплывающих окон.

Другие советы

В Firefox (и большинстве других современных веб-браузеров с блокировщиками всплывающих окон) окна Javascript обычно разрешаются, если они являются результатом щелчка пользователя, но останавливаются, если они пытаются открыться в фоновом режиме.

Сравните метод, использованный в этих плохие всплывающие окна с этими хорошие всплывающие окна.Исходный код доступен на сайте.Вот исходный код «хороших» всплывающих окон:

<a href="javascript:winopen('http://www.popuptest.com/popup3.html','blank','width=450,height=235,status=yes')">Good PopUp #1</a>
<br><br>
<A class=blu HREF="http://www.popuptest.com/popup2.html" target="_BLANK">Good PopUp #2</A>
<br><br>
<A class=black HREF="http://www.popuptest.com/popup3.html" onclick="NewWindow(this.href,'rank','450','450','yes','center');return false" onfocus="this.blur()">Good PopUp #3</A>
<br><br>
<a href="javascript:PopWindow('http://www.popuptest.com/popup4.html', 450, 320)">Good PopUp #4</A>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top