Назад | Перейти на главную страницу

Страница не загружается в IE9, если сначала не будут запущены инструменты разработчика

Одна из моих страниц (с очень обширным javascript) не загружается в IE9. Он нормально загружается в Mozilla, Chrome, Safari и Opera.

Если инструменты разработчика IE9 работают, он загружается нормально.

Если я загружаю IE9, загружаю инструменты разработчика (F12), а затем убиваю инструменты разработчика, которые все равно загружаются нормально.

Если инструменты разработчика запущены, то иногда (но не всегда) первое сообщение в консоли:

HTML1113: Document mode restart from Quirks to IE9 Standards 

Doctype:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

Если я изменю doctype на и удалю xmlns, ничего не изменится.

Я в тупике. Любые предложения приветствуются.

Ты используешь console объект и его методы? IE9 создает его только тогда, когда вы открываете инструменты разработчика, и любая попытка проиндексировать его без проверки, существует ли он, очевидно, потерпит неудачу. Простое обходное решение - установить пустой объект и пустую заглушку для наиболее часто используемой функции - console.log в начале вашего кода.

Видеть Режимы документа IE9 и JavaScript для информации о различных режимах документа IE. Установка режима документа может решить проблему, но тогда ваша веб-страница не будет работать в ранних версиях IE. Вероятно, вам потребуется итеративно сузить проблему в вашем JavaScript и изменить ее для работы в IE.