Регистрация Войти
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Поиск по сайту
Проверка блокировки всплывающих окон
Исходный код этого примера:
<script type="text/javascript">
c=window.open("https://htmlweb.ru/java/ann.jpg","ad78gptfn2u5cqgpah34151","width=20,height=20,top=0,left=-50,toolbar=0,location=0,menubar=0,status=1,directories=0,resizable=1")
if(c){
c.close(); // закрываю окно
document.writeln("В вашем браузере разрешены всплывающие окна.");
}else{
document.writeln("В вашем браузере запрещены всплывающие окна.");
if(confirm("Внимание!\nВ вашем браузере отключены всплывающие окна.\n\nПродолжить работу с отключенными всплывающими окнами? ")){}
// переход на версию без всплывающих окон
//window.location.replace("a.php");
}
</script>
Альтернативный вариант обработки запрета всплывающийх окон
После загрузки страницы (например, по событию window.onload) замените метод window.open на свою функцию. Примерно так:
window.addEventListener('load', function load(event){ //добавляем наш инициализатор
window.removeEventListener('load', load, false); // убираем его после успешного запуска
function newopen(){ // инициализатор обертки
var wopen = window.open; // сохраняем нативную функцию
return function(){ // возвратит нашу обертку с нужным контекстом
if (confirm('Всплывающее окно заблокировано. Показать его?')){
wopen.apply(window, arguments); // вызываем нативную функцию с переданными параметрами
};
};
};
window.open = newopen(); // переопределяем нативную функцию на свою обертку
}, false);
Если всплывающее окно создается в iframe, то скрипт надо внутри iframe запускать.
.
Прокомментировать/Отблагодарить