Отладка модального диалога (showModalDialog) в IE

Я хочу отладить (изучить DOM, использовать интерактивную консоль JS и т. д.) часть веб-приложения, которая находится внутри модального диалога, созданного showModalDialog().

Я не могу найти способ использовать стандартные инструменты разработчика IE-8 для этого; в диалоговом окне нет панели инструментов, и обычный ярлык (F12) не работает.


другой вопрос SO (я, к сожалению, потерял ссылку) предположил, что единственным решением является (возможно, временно) заменить showModalDialog() со старомодным window.open(). Если это так, есть ли прямой способ сделать это?

предостережения:

  • приложение заботится о передаче dialogArguments и возвращаемое значение showModalDialog
  • я не могу использовать другие браузеры, FF + Firebug и т. д.

4 ответов


F12 работает, чтобы вызвать инструменты разработчика, если вы включите адресную строку.

Go Tools / Internet options / Security / (выберите нужную зону для вашего site) / пользовательский уровень в разделе "Разное" В разделе " Разрешить веб-сайтам откройте окна без адресов или строк состояния", выберите "Отключить".

источник:https://stackoverflow.com/a/10984858/79835


Я делаю это, создавая ошибку в коде js, которая затем вызывает окно ошибки с вопросом, Хотите ли вы отладить скрипт.

один из способов сделать это-вызвать несуществующий метод где-то в коде.

например, blabla ();


то, что я делаю, когда я отлаживаю модальные окна, - это две вещи.

  • вы можете включить в свой JS-код отладчик инструкций; это остановит выполнение js, как если бы вы поставили точку останова.
  • вы также можете открыть инструменты разработчика ie перед открытием модального окна и, как только он открыт, вы можете просмотреть сгенерированный код на вкладке сценарий, добавив точки останова, приостановив выполнение,... все, что нужно.

надеюсь, что это помогает!


теперь вы можете поставить слово debugger без кавычек в вашем javascript.

IE и Chrome должны сломаться на нем, как если бы вы установили точку останова на нем. Убедитесь, что он на линии сам по себе. Нажмите F12, чтобы открыть отладчик браузера, а затем обновить страницу или запустить событие для запуска javascript, и отладчик должен автоматически отображать код с заданной точкой останова.