Так вот в чем дело. У нас есть приложение Flash, которое выполняется в файле HTML. Для одной страницы мы называем устаревшую систему отчетов в ASP.NET, которая находится внутри IFRAME. Затем эта страница возвращается обратно в приложение Flash с использованием междоменных сценариев (document.domain = "domain" устанавливается на обеих страницах.
ЭТО ВСЕ РАБОТАЕТ.
Теперь кикер. Flash имеет отслеживание истории включено. При этом загружается файл history.js, который создал тег div для сохранения изменений страницы, чтобы в браузере работали кнопки «назад» и «вперед».
Что работает для Firefox и Chrome, поскольку они создают тег div.
ОДНАКО
В Internet Explorer history.js создает другое IFRAME (вместо DIV) с именем ie_historyFrame. Когда код ScriptResource.axd пытается получить к нему доступ с помощью:
var frameDoc = this._historyFrame.contentWindow.document;
мы получаем сообщение об ошибке «Доступ запрещен». ARGH!
- Мы попытались получить дескриптор этого IFRAME и вставить код document.domain. ПОТЕРПЕТЬ ПОРАЖЕНИЕ.
- Мы попытались отредактировать файл historytemplate.html, который flex также использует для включения document.domain ... FAIL.
- Я пытался редактировать базовый
ASP.NET страница для отключения истории
отслеживание в ScriptManager
контроль. СБОЙ.
В конце моего остроумия на этом. У нас есть пользователи, которым нужно использовать IE для доступа к этому сайту. Это крупные клиенты, которых мы не можем сказать, просто использовать Firefox.
Любые предложения будут с благодарностью.