Отладка модального диалога (showModalDialog) в IE - PullRequest
35 голосов
/ 05 февраля 2011

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

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


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

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

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

Ответы [ 4 ]

63 голосов
/ 19 июня 2012

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

Перейти Инструменты / Свойства обозревателя / Безопасность / (выберите правильную зону для вашего сайта) / Пользовательский уровень ниже "Разное "В разделе" Разрешить веб-сайтам открывать окна без адреса или строки состояния "выберите" Отключить ".

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

7 голосов
/ 08 февраля 2011

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

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

например. блаб ();

2 голосов
/ 27 апреля 2013

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

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

2 голосов
/ 29 августа 2011

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

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

Надеюсь, это поможет!

...