Я работаю над веб-приложением, для которого нужно открыть новое окно браузера. Я использую метод JavaScript window.open () для this.once. Дочернее окно создано с использованием этого метода. Я использую метод window.focus (). для перемещения между родительским и дочерним окном. Это прекрасно работает на всех десктопах и браузерах Android.
код:
<a href="javascript:void(0);" onclick="openWin('url')">
чтобы открыть окно:
function openWin(url){
myWindow = window.open(url,"myWindow");
myWindow.opener = window;
myWindow.focus();
}
чтобы переключиться на родителя с дочернего
window.opener.focus();
снова переключиться на ребенка
myWindow.focus();
Теперь проблема в том, что когда я использую его в мобильном сафари (ipod touch), отображается предупреждение «Этот сайт пытается открыть всплывающее окно» с параметрами «Разрешить» и «Блокировать». когда я нажимаю на разрешить, он открывает новое окно, но навигация с использованием window.focus не работает. Я думаю, это потому, что браузер Safari принимает его как всплывающее окно, а не как полное окно браузера, и поэтому он не может возвращать объект браузера при создании ).
в этом же приложении я использую тот же код при нажатии на кнопку, и он очень хорошо работает на ipod без такого предупреждающего сообщения, но не работает с тегом привязки.
Может кто-нибудь указать мне, что я должен сделать, чтобы это работало, спасибо заранее.
Анил.