Проблема запуска загрузки в IE8 - PullRequest
0 голосов
/ 29 июня 2011

Я работаю над небольшим количеством кода, который должен вызывать загрузку из всплывающего окна, которое работало в IE7, но не работало в IE8 (также работает в chrome и firefox). Ситуация такова, что родительское окно находится в другом домене, чем ссылка для скачивания, и открывается всплывающее окно с URL-адресом (скажем, http://someother.domain.com/downloadHelper.jsp), который генерирует и возвращает этот бит JavaScript:


downloadURL=http://someother.domain.com/downloadServlet?content=blarg.txt
snip...
window.opener.top.location.href = downloadURL;
snip...

Использование отладки fiddler / js, чтобы увидеть, что браузер делает шаг за шагом - в IE7 я вижу это

  1. Появляется главное всплывающее окно и отправляет запрос на скачивание Helper.jsp
  2. строка window.opener вызывает запрос на скачивание сервлета
  3. В главном окне появляется диалог загрузки IE.

Однако в IE8 я вижу это:

  1. Появляется главное всплывающее окно и отправляет запрос на скачивание Helper.jsp
  2. Строка window.opener открывает новое всплывающее окно с запросом на скачивание сервлета
  3. Оба всплывающих окна закрываются без диалогового окна загрузки IE

Есть идеи, что здесь происходит?

1 Ответ

2 голосов
/ 02 августа 2011

Добавьте X-UA-Compatible: IE=EmulateIE7 на свою страницу или заголовки ответа, чтобы заставить IE8 и 9 использовать режим документа IE7 (только если вы на 100% уверены, что ваши посетители будут использовать браузеры IE).

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