Это очень насущная проблема, и я всегда был бы в долгу перед каждым, кто может дать некоторое представление.
Я собираюсь развернуть виджет (называемый «ISM») на стороннем сайте. Этот сайт использует свойство JavaScript document.domain для ослабления междоменных ограничений (например, установив document.domain в "a.example.com" и "b.example.com" для обоих "example.com", чтобы они могли получить доступ к каждому DOMs других).
Это вызывает проблемы с моим сценарием в Internet Explorer из-за способа, которым я создаю
Чтобы увидеть, о чем я говорю, загрузите эту страницу в IE:
http://troy.onespot.com/static/3263/stage1.html
Вы должны увидеть ошибку JavaScript: «Доступ запрещен».
Чтобы обойти это, я устанавливаю динамически созданный атрибут
http://troy.onespot.com/static/3263/stage2.html
Это решает проблему безопасности и позволяет мне написать документ, который я изначально хотел записать в
http://troy.onespot.com/static/3263/stage3.html
С этим документом мой виджет выполняет опрос нашего сервера, чтобы получить HTML-контент, который я хочу вставить в другой
http://troy.onespot.com/static/3263/stage4.html
Здесь возникает проблема. Когда я получаю этот HTML-контент и вставляю его во вторую
http://troy.onespot.com/static/3263/stage5.html
Если вы нажмете ссылку "Google", все будет в порядке. Но при переходе на предыдущую страницу (на которой есть последний тестовый скрипт) появляется другая ошибка JavaScript: «Отказано в доступе». Это не прекращает работу сценария и не оказывает какого-либо вредного воздействия, за исключением того факта, что я предполагаю, что он связан с нарушенной функциональностью кнопки «Назад», что является очень большой проблемой - той, которую я отчаянно пытаюсь решать. Я затрудняюсь отладить эту ошибку, поскольку ее стек вызовов запускается и останавливается в сценарии jQuery.
Вы также можете столкнуться с этой ошибкой - с более серьезными симптомами - перейдя по последней ссылке выше (stage5.html - сначала очистите кеш браузера). Нажмите ссылку «Этап 5 (снова)», затем, после загрузки этой страницы, нажмите кнопку «Назад».
Кнопка «Назад» полностью сломана! Вы не можете перейти никуда, кроме как на другой URL.
Это проблема, которую мне нужно решить как можно скорее. Любые идеи или помощь будут чрезвычайно оценены!
Я не могу слишком сильно отклоняться от этого метода, поэтому внушительные предложения определенно приветствуются, но я не могу их использовать из-за ограничений спецификаций виджета. Я бы предпочел понять, почему кнопка «Назад» не работает и как ее исправить, а также ошибку «Отказано в доступе», связанный с jQuery.