28.02.2011, 23:55
|
|
Профессор
|
|
Регистрация: 12.08.2010
Сообщений: 221
|
|
Всплывающие окна
Написал простой код, возщмутило,то что и ГУГЛХРОМ И Мозила идр. браузеры, блокируют это. Как средствам JAVASCRIPT запретить блокирование браузером этого кода?
Просто что делать, если например много таких окон нужно будет на сайте, например при нажатии на кнопке создавать, их все не увидит пользователь, постоянно прийдётся ему отключать через настройки браузера?
Код:
|
<script type="text/javascript">
var t = window.open("","Новое окно","width=400,height=300");
t.document.write("Вывод информации в новое окно");
</script> |
|
|
01.03.2011, 00:27
|
х.з
|
|
Регистрация: 21.11.2010
Сообщений: 4,588
|
|
Ну а многих возмущала РорUp реклама -поэтому и блокируются браузерами всплывающие окна.
что мешает сделать всплывающий контейнер?
Последний раз редактировалось dmitriymar, 01.03.2011 в 00:30.
|
|
01.03.2011, 00:53
|
|
Тлен
|
|
Регистрация: 02.01.2010
Сообщений: 6,567
|
|
Фишка в том, что как раз навешанное на кнопку/ссылку это сработает, а вот просто так - нет.
<!DOCTYPE HTML>
<html>
<body>
<script type="text/javascript">
function popup(el){
var t = window.open('','Новое окно','width=400,height=300').document;
t.open();
t.write(el);
t.close()
}
popup('само просто так')
</script>
<input type="button" value="click" onclick="popup('кнопка')">
<br>
<a href="#nojs" onclick="popup('сыылка');return false">click</a>
</body>
</html>
Так что если вы не злобный рекламщик и хотите именно того, о чём написали - нет проблем.)
Последний раз редактировалось Aetae, 01.03.2011 в 00:55.
|
|
01.03.2011, 01:21
|
|
Профессор
|
|
Регистрация: 12.08.2010
Сообщений: 221
|
|
Да, это хорошо, спасибо, но как-то странно,код вроде и делает то, что я хотел, только уведомляет вдобавок что окно всплывающее было заблокировано. Вот фото.
а)Скажите, а что такое return false? Я имею ввиду зачем оно?
б)window.open('','Новое окно','width=400,height=300').document;
А разве можно через объект опен вызвать объект документ?
Что этот вызов будет означать?
Последний раз редактировалось Golovastik, 01.03.2011 в 01:30.
|
|
01.03.2011, 01:32
|
|
Тлен
|
|
Регистрация: 02.01.2010
Сообщений: 6,567
|
|
Смотрите код внимательнее. В выделенном месте я один раз пытаюсь открыть окно просто так, чтоб показать, что по-старому всё ещё не работает.
<!DOCTYPE HTML>
<html>
<body>
<script type="text/javascript">
function popup(el){
var t = window.open('','Новое окно','width=400,height=300').document;
t.open();
t.write(el);
t.close()
}
*!*popup('само просто так')*/!*
</script>
<input type="button" value="click" onclick="popup('кнопка')">
<br>
<a href="#nojs" onclick="popup('сыылка');return false">click</a>
</body>
</html>
И не смотрите что сам код вызова окна немного отличается от вашего, просто у вас опущено открытие и закрытие записываемого документа, что не есть хорошо.
Последний раз редактировалось Aetae, 01.03.2011 в 01:35.
|
|
02.11.2016, 13:16
|
Аспирант
|
|
Регистрация: 02.11.2016
Сообщений: 31
|
|
Как закрыть всплывающее окно в IE9+?
Всем привет.
Как закрыть окно в IE9+
function someFunction(someUrl) {
var wnd = window.open(url,"","width=150,height=150");
setTimeout(function() {wnd.close()}, 500);
}
В Chrome это работает, а в IE 11 окно не закрывается.
|
|
02.11.2016, 13:39
|
Профессор
|
|
Регистрация: 27.11.2015
Сообщений: 2,899
|
|
phoenix200689
У меня и в Chrome и в IE11 и IE9 одинаково открывается-закрывается ( правда, IE9 реально нету - IE11 в режиме эмуляции 9)
<script>
function someFunction(url) {
var wnd = window.open(url,"","width=150,height=150");
setTimeout(function() {wnd.close()}, 500);
}
</script>
<button onclick='someFunction("")'>Открыть окно</button>
|
|
|
|