Есть ли способ изменить фреймы в консоли скриптов Internet Explorer?

В инструментах разработчика Google Chrome есть простой выпадающий список, в котором можно выбрать, в каком окне вы хотите выполнить свой скрипт:

Есть ли аналог в Internet Explorer? Я пытаюсь запускать скрипты из консоли, как будто они из iframe, а не из окна верхнего уровня.

4 ответа

Решение

Это возможно, однако это значительно менее удобно, чем в Chrome.

Если вы можете получить ссылку на кадр или его window объект (используя, например: document.getElementById(xxx).contentWindow), вы можете использовать специальные консоли cd функция. Это задокументировано здесь: http://msdn.microsoft.com/en-us/library/ie/gg589530(v=vs.85).aspx

Досадно, но это означает, что если вы хотите получить ссылку на вложенный iframe, вы должны делать это внутри каждого из родителей интересующего вас фрейма. Отладка в IE - это, конечно, весело.

Чтобы продолжить ответ Бена, это было бы

cd([reference])

или же

cd(frames[n])

где n является допустимым индексом в массиве window.frames

Эта функция теперь доступна в IE 11. Если вы откроете инструменты разработки (F12), в правом верхнем углу появится поле со списком, которое позволит вам выбрать целевой кадр.

Internet Explorer 11 Dev Tools Целевая рамка комбинированный список

(Примечание: это в IE 11.0.9600.17728, не уверен, есть ли в каждой версии IE 11.)

F12 -> скрипт -> выберите свою страницу -> консоль

РЕДАКТИРОВАТЬ:

Вы можете начать отладку там на Java-скрипте, добавить точку останова и прочее. Ваши ключи для запуска отладчика, как в Visual Studio.

Другие вопросы по тегам