window.open () в IE 9 - PullRequest
       1

window.open () в IE 9

1 голос
/ 14 июля 2011

когда я пытаюсь window.open () в IE 9 он открывает его с боковой панели избранного (если он присутствовал в родительском окне), это уникальное поведение для IE, и он разбивает диалоговые окна, как я их себе представлял. Есть надежда исправить это?

Ответы [ 2 ]

1 голос
/ 30 августа 2011

Поскольку вы указали, что используете это для диалога, я чувствую, что должен препятствовать этому. Использование window.open() не идеально для создания диалоговых окон.

  • Некоторые браузеры игнорируют ваш запрос «новое окно» и открывают его как новую вкладку. Это может быть настроено пользователем браузера, так что это вне вашего контроля.

  • Если у пользователя есть открытые панели инструментов и боковые панели, есть большая вероятность того, что они появятся в новом окне, которое изменит ваш макет. Опять же, вам нужно будет проверить это в каждом браузере, и даже тогда вы не можете быть уверены, не зная всех параметров конфигурации, которые могут повлиять на него.

  • Открытие нового окна не дает модального диалогового окна. Вы не можете запретить пользователю возвращаться в родительское окно и игнорировать диалоговое окно.

Поэтому, если вы хотите создать диалоговое окно, вам было бы гораздо лучше использовать библиотеку JavaScript, которая открывает окно внутри текущей страницы. Он гораздо более гибкий и дает вам гораздо больший контроль над конечным результатом, чем window.open().

Если вы используете JQuery, вы можете начать с поиска здесь: http://choosedaily.com/1178/15-jquery-popup-modal-dialog-plugins-tutorials/, но есть стеки других доступных (это очень легко написать, особенно в JQuery, поэтому есть много плагинов там вы можете попробовать, пока не найдете тот, который идеально подходит для вас)

0 голосов
/ 30 августа 2011

Попробуйте изменить его на window.location.href= 'url + target="_blank"'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...