2
У меня есть этот код здесь:JavaScript окна кросс-браузер близко вопрос
<?php
error_reporting(0);
if(isset($_GET['bd'])){
?>
<script>
window.close();
</script>
<?php
}
, который работает нормально в Chrome, но не работает в FireFox. Есть ли известная проблема с этим? Как я могу заставить его работать последовательно над указанными браузерами?
Вы видите ошибку в Javascript Console? – jrummell
try ' ' – mgraph
@mgraph Браузеры давно рассчитывали ожидать javascript в'
Для Firefox авторитетная ссылка MDN. Цитата оттуда:
Этот метод разрешен только для окон, открытых скриптом с использованием метода window.open. Если окно не было открыто скриптом, в консоли JavaScript появляется следующая ошибка: скрипты могут не закрывать окна, которые не были открыты скриптом.
Источник: https://developer.mozilla.org/en/DOM/window.close
Как ваш веб-страница была построена ServerSide и регулярно открыто, а не JavaScript, он не будет работать в вашем случае.
Обратите внимание также различное поведение в Internet Explorer:
Вызов метода window.close на окне не было открыто сценарий отображает диалоговое окно подтверждения. С помощью скрипта для закрытия последнего запущенного экземпляра Windows Internet Explorer открывается диалоговое окно подтверждения.
Так что это сработает, но с подтверждением.
Наконец, я протестировал его в Opera, и он работает даже на регулярно открытых окнах, как и вы сказали, что это происходит в Chrome.
источник
2012-05-21 15:10:03 Imp
может быть неправильный код php – choppermio
вы можете попробовать его в fire fox – choppermio
@ user1244193 Да ладно, вы даже прочитали мой ответ? Согласно MDN, который является в основном документацией Firefox, реакция должна быть «Скрипты могут не закрывать окна, которые не были открыты скриптом». И это именно то, что говорит мой Firefox. Посмотрите консоль Tools-> Error (Ctrl + shift + J). – Imp