Заблокированное и незаблокированное всплывающее окно
-
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>