Поддерживает ли Internet Explorer pushState и replaceState?


кто-нибудь знает, поддерживает ли Internet Explorer history.pushState() и history.replaceState() методы манипулировать историей браузера? Учитывая, что они просто реализуются в Firefox 4, я не задерживаю дыхание, но кто-нибудь знает, входят ли они в IE9?

4 137

4 ответа:

пожалуй, лучший сайт для информации о совместимости браузера CanIUse. Вот раздел о история.

резюме - IE9: нет,в IE10: да (начиная с предварительного просмотра платформы 3)

первый релиз-кандидат IE9 (выпущен 10 февраля 2011 года) не поддерживает историю.pushState или истории.replaceState. Как правило, новые функции не добавляются после того, как продукт попадает на стадию RC, поэтому очень маловероятно, что окончательный В IE9 будет поддерживать эти методы.

Microsoft есть хороший обзор для разработчиков из особенностей IE9 имеет.

обновление: Internet Explorer 9 был запущен (14 марта 2011 года) и определенно не поддерживает history.pushState() или history.replaceState().

обновление 2: текущий предварительный просмотр платформы IE10 по-прежнему не поддерживает pushState / replaceState.

обновление 3: предварительный просмотр платформы 3 из IE10 поддерживает историю API!подробности

IE9 не поддерживает его.

однако вы можете использовать обходной путь с помощью Polyfill, чтобы получить функциональную историю.js https://github.com/browserstate/history.js.

Modernizr сделать хорошую работу листинг HTML 5 полифилл здесь https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-browser-Polyfills.

предостережение заключается в том, что он добавит строку запроса к вашему URL-адресу в браузерах, которые поддерживают только HTML 4 особенности.

Internet Explorer 10 предоставляет поддержку интерфейса истории проекта спецификации HTML5, который включает методы, позволяющие управлять стеком истории и URL-адресом сайта.

исходная Ссылка:https://msdn.microsoft.com/en-us/library/ie/hh920758 (v=vs. 85). aspx

Кстати вы можете получить такую ошибку в причине абсолютного пути в pushState (). Когда я установил относительную ошибку пути, она исчезла.