Как вы можете открыть 2 окна, даже когда ie6 блокировщик всплывающих окон включен
Похоже, что при попытке открыть 2 окна из последовательности вызовов windows.open он открывает только первое окно и удаляет ссылку на второе окно. Я знаю, что это звучит немного глупо, но нам нужно это второе всплывающее окно.
Есть идеи?
К сожалению, мы обращаемся к случаю пользователя, где ie6 на стороне пользователя имеет включенный блокировщик всплывающих окон.
3 ответа
РЕДАКТИРОВАТЬ: Я только что понял, что вы, вероятно, используете пустое ('') имя окна для обоих окон:
var win = window.open(url, '', 'blah=1');
var win2 = window.open(url2, '', 'stuff=1'); //later
Это, вероятно, обрабатывается с помощью разных окон в браузерах, отличных от IE6.
Если это не сработает, вы можете подумать о добавлении элементов div, которые отображаются поверх вашего контента (вместо использования всплывающих окон), что считается лучшим вариантом.
По умолчанию блокировщик всплывающих окон IE позволяет открывать только одно новое окно для каждого действия, инициируемого пользователем (т. Е. Щелчка по какому-либо элементу). Если вы попытаетесь открыть два новых окна в одном и том же обработчике в ответ на одно действие, инициированное пользователем, будет успешно открыто только первое окно. Это по замыслу.
Существует ключ переопределения, который пользователи могут использовать: в IE6 я думаю, что это CTRL, но это может быть CTRL+ALT, потому что он был изменен в более поздних версиях (не уверен, был ли он перенесен обратно или нет).
Если вы зайдите в Сервис-> Свойства обозревателя-> Блокировка всплывающих окон-> Настройки-> Уровень блокировки: и посмотрите на значение в раскрывающемся списке "Высокий", он скажет вам ключ переопределения в скобке.
В этом же диалоговом окне настроек вы также можете добавить этот конкретный сайт в список "Разрешенные сайты", а затем блокировщик всплывающих окон позволит всем попыткам создания нового окна на указанном сайте успешно завершиться. Я почти уверен, что этот список также может быть предварительно заполнен через групповую политику или IEAK или что-то в этом роде. Но это просто список, который хранится в реестре, так что вы также можете написать сценарии входа в систему, которые будут просто добавлять вещи, если они должны быть добавлены.
Если у вас есть дополнительные вопросы, дайте мне знать (я был разработчиком, который реализовал блокировщик всплывающих окон IE).
IE6 звучит так, будто это корпоративная установка. Предполагая, что это правда, обратитесь к своим администраторам и попросите групповую политику установить, чтобы ваш внутренний веб-сайт находился в зоне интрасети, и отключите блокировку всплывающих окон для этой зоны.