Я пытаюсь отладить большое и сложное веб-приложение, которое активно использует DIV, AJAX, динамический HTML и серверный код для своей работы.
При нормальной работе у нас нет проблем.Тем не менее, когда мы помещаем веб-приложение в IFRAME, некоторые функции вызывают сбой в IE7, что приводит к неработоспособности браузера (используется весь процессор).
Какие существуют инструменты, помогающие отследить, что может произойти?Загрузка процесса IE в отладчик дает мне всевозможную увлекательную информацию о регистрах, но я думаю, что проблема в javascript.
Мы уже обнаружили одну проблему с приложением, которая заключалась в неправильном повторении текста элемента(что-то прикрепилось к window.
вместо document.
)
Я написал тестовую страницу IFRAME, которая выгружает innerHTML iframe в текстовое поле, поэтому его можно сравнивать во время различных состояний, но это показывает толькоя статические атрибуты, я не могу сказать, какие события javascript связаны с элементами или определить, срабатывает ли обработчик вне очереди.
IE8, Firefox, Chrome и т. д. не имеют такое поведение.
В идеале я хотел бы что-то, что позволило бы мне сделать снимок DOM (или виртуальной машины JavaScript) во время известного исправного состояния, а затем «как раз перед тем, как это произойдет», чтобы мы могли выяснить, что добавлено / удалено / отсутствует / отличается,Что там?
Обновление: Сейчас я пытаюсь использовать панель инструментов разработчика IE, чтобы отследить его.
Обновление 2: Сбой IE7 происходит после этого кода AJAX:
function Sys$UI$Control$get_element() {
/// <value domElement="true" locid="P:J#Sys.UI.Control.element"></value>
if (arguments.length !== 0) throw Error.parameterCount();
return this._element;
}
Строка return this._element;
- это последнее, что происходит перед тем, как я теряю IE.