Мне нужно отладить JavaScript в Internet Explorer 7.
К сожалению, его отладчик по умолчанию не предоставляет мне много информации. Он сообщает мне страницу, на которой обнаружена ошибка (а не конкретный сценарий), и дает мне номер строки. Я не знаю, связано ли это с моей проблемой.
Было бы неплохо, если бы он мог сузить ошибку до номера строки в конкретном скрипте (например, Firebug).
Есть ли надстройка для отладки JavaScript в IE7, как Firebug в Firefox?
Спасибо!
Есть ли в IE7 «режим разработчика» или плагин, например Firefox / Chrome / Safari?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Я нашел DebugBar.
Не так хорошо, как Firebug, но близко.
Я не знаю, почему это не принятый ответ. Намного лучше, чем любой другой отладчик для IE.
На самом деле я обнаружил, что бесплатный "Компаньон JS", упомянутый на их сайте, работает лучше всего. Он сообщает вам, в каком именно файле JS и номере строки возникает ошибка.
Помощник по веб-разработке очень хорошо.
Панель инструментов IE Dev часто бывает полезным, но, к сожалению, не выполняет отладку скриптов.
Стоит, пожалуй, отметить, что в расширенных параметрах необходимо отключить «отключать отладку».
Я не вижу никаких параметров отладки скриптов на панели инструментов IE Dev, а последняя версия Web Development Helper не работает даже после изменения моих дополнительных настроек и перезапуска IE7.
Приведенная выше ссылка на Помощник по веб-разработке не работает. Может ли кто-нибудь подтвердить, что это тот же самый инструмент, который размещен здесь? softpedia.com/get/Tweak/Browser-Tweak/…
@RMorrisey После того, как я установил инструмент, в заголовке инструментов написано Nikhil's Web Development Helper. Так что это может быть правильный инструмент.
О, ирония; Ссылка для загрузки софтпедии для Web Dev Helper умирает в IE7! (Ужасная ошибка «Операция прервана».)
Думаю, ссылка ведет на вредоносное ПО.
Основная ссылка не работает
Ссылка снова битая, вот новая: web-development-helper.software.informer.com
К сожалению, с IETester это не работает.
В IE8 значительно улучшены инструменты разработчика. А пока лучше сначала написать javascript для firefox, а затем отлаживать IE с помощью операторов alert ().
Не могу дождаться IE8 (пока он оправдывает ажиотаж - я еще не скачал бета-версию)
Теперь, когда он вышел, я обновился, и должен сказать, что мне нравится отладчик даже больше, чем Firebug :)
@Joel, хотя отладчик отличный - одна вещь, которая меня раздражает (что есть в Firebug), - это контекстное меню правой кнопки мыши, где вы можете выбрать «проверить элемент». Насколько мне известно, в IE8 вам нужно запустить инструменты разработчика, затем щелкнуть стрелку, а затем найти элемент, который вы хотите проверить.
Суровая правда такова: единственный хороший отладчик для IE - это Visual Studio.
Если у вас нет денег на реальную сделку, скачайте бесплатно Экспресс-выпуск Visual Web Developer 2008Экспресс-выпуск Visual Web Developer 2010. В то время как первый позволяет вам подключить отладчик к уже запущенному IE, последний - нет (по крайней мере, предыдущие версии, которые я использовал, не позволяли этого). Если это все еще так, уловка состоит в том, чтобы создать простой проект с одной пустой веб-страницей, «запустить» его (он запускает браузер), теперь перейти к любой странице, которую вы хотите отлаживать, и начать отладку.
Microsoft раздает полную версию Visual Studio на различных мероприятиях, обычно с лицензионными ограничениями, но они позволяют возиться дома. Проверьте их расписание и список бесплатных подарков.
Еще один совет: сначала попробуйте отладить свое веб-приложение в других браузерах. У меня был большой успех с Opera. Почему-то Opera эмуляция IE и его ошибок была довольно близка, но отладчик намного лучше.
пошаговые инструкции см. в Ответ @mitjak
VS - не единственный хороший отладчик для IE, хотя я согласен, что хороших не так много. Это единственный отладчик javascript для IE, который я использую в течение многих лет, хотя он и платный: javascript-debugger.com
Ссылка на VS 2008 пропала. Теперь он переходит на страницу VS 2012.
Существует VS 2012 Express Edition, который все еще бесплатен (старая ссылка на самом деле указывает на него).
VS2012 Express требует Windows 7. Если вы пытаетесь отлаживать IE7, это бесполезно. Вам понадобится VS2010 Web Express: microsoft.com/web/gallery/…
вы можете захотеть попробовать отладчик скриптов microsoft он довольно старый, но весьма полезен в том смысле, что если вы наткнетесь на какую-либо ошибку javascript, отладчик покажет вам, какая строка испорчена. иногда это может раздражать, когда вы занимаетесь серфингом в обычном режиме, но вы можете выключить его, если вы его отключите.
вот хороший стартап о том, как использовать этот инструмент. КАК: Отладка JavaScript в Internet Explorer
Ссылка как не работает. Вот обновленная ссылка: jonathanboutelle.com/2006/01/16/…
Отличный способ отладки с низким коэффициентом трения без установки стороннего программного обеспечения.
Редактор сценариев Microsoft можно использовать для отладки Javascript в IE. В нем меньше ошибок, чем в Microsoft Script Debugger, но он имеет те же базовые функции, которые, к сожалению, в значительной степени ограничены пошаговым выполнением. Кажется, я не могу проверять переменные или подобные вещи. Кроме того, по какой-то странной причине он поставлялся только с Office XP / 2003. Подробнее здесь, если вы играете.
Я загрузил Visual Web Developer 2008 Express Edition, упомянутый Евгением Лазуткиным, но еще не успел его попробовать. Я бы рекомендовал попробовать это перед редактором / отладчиком скриптов.
Это не полный отладчик, но мои расширения DP_DEBUG предоставляют некоторые (я думаю) полезные функции, и они работают в IE, Firefox и Opera (9+).
Вы можете «сбрасывать» визуальные представления сложных объектов JavaScript (даже системных объектов), упростить регистрацию и синхронизацию. Компонент предоставляет простые методы для его включения или отключения, так что вы можете оставить отладчик на месте для производственной работы, если хотите.
Редактор сценариев Microsoft действительно является вариантом, и из тех, что я пробовал, один из наиболее стабильных - отладчик в IE8 великолепен, но по какой-то причине всякий раз, когда я запускаю инструменты разработчика, IE8 требуется некоторое время, иногда до минуту, чтобы проверить DOM-дерево моей страницы. А потом, похоже, он хочет делать это при каждом обновлении страницы, что является пыткой.
Вы может проверяете содержимое переменных в редакторе Microsoft Script: если вы ковыряетесь в Debug> Window, вы можете включить проверку локальных переменных, просмотр и т. д.
Другой вариант, Visual Web Dev, хоть и громоздкий, но работает достаточно хорошо. Чтобы настроить его, сделайте это (украдено с здесь):
ОБНОВИТЬ: Между прочим, если вы испытываете такие же замедления, как и я, с приличным отладчиком IE8, есть обходной путь - если вы столкнетесь с ошибкой или заставите IE столкнуться с ошибкой, появится диалоговое окно «Вы хотите отладить» и нажмите "Да", отладчик откроется практически мгновенно. Похоже, что если вы перейдете «прямо» в режим отладки, инструменты разработчика никогда не будут проверять DOM. Это происходит только тогда, когда вы нажимаете F12.
Мне пришлось бы еще раз это проверить, но пока кажется, что отладчик IE8 работает быстрее при просмотре в режиме совместимости. Иди разберись!
Если вы используете экспресс-(бесплатную) версию VWD, убедитесь, что вы закрыли ВСЕ окна IE перед шагом 4 - VWD должен быть тем, кто запускает IE заново, чтобы он «владел» им.
Используйте Internet Explorer 8. Затем попробуйте инструмент разработчика. Вы можете отлаживать на основе IE 7 также в режиме совместимости.
IE7! = Режим совместимости с IE8. Есть несовместимости.
+1 По крайней мере IE8 сообщает вам имя файла сценария, вызывающего ошибку.
@thorn, но есть режим IE7. (Может, раньше не было?) Итак: обычный, режим совместимости, режим IE7.
@ANeves это просто разные имена для одного и того же
@thorn правда? ... это было бы действительно глупо с их стороны предлагать три варианта, два из которых на самом деле были одинаковыми.
@ANeves, не могли бы вы показать снимок экрана с этими тремя вариантами?
@thorn, я надеюсь, что мы говорим не только о разных вещах ... это было бы неловко. Здесь: img801.imageshack.us/i/ie83modes.png
@ANeves Действительно, я раньше этого меню не замечал. Вот объяснение Microsoft: msdn.microsoft.com/en-us/library/dd565628%28VS.85%29.aspx
@ANeves Похоже, что «режим IE7» - это просто «режим совместимости» с пользовательским агентом, измененным на тот, который используется в IE7. Но я хочу еще раз подчеркнуть, что режим совместимости несовместим. Например, сброс свойства стиля через jQuery в IE7 (и других браузерах) выглядит следующим образом: $my.css('z-index', null). В IE8 этот код выдает ошибку даже в так называемом режиме совместимости. Поэтому мне пришлось написать такой код: $my.css('z-index', ie8 ? 'auto' : null)
В IE7 вы можете вызвать firebug lite для текущей страницы, вставив в адресную строку следующее:
javascript:var firebug=document.createElement('script');firebug.setAttribute('src','http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js');document.body.appendChild(firebug);(function(){if (window.firebug.version){firebug.init();}else{setTimeout(arguments.callee);}})();void(firebug);
См. http://getfirebug.com/lite.html.
Firebug lite не поддерживает Javascript
Я остановился на FireBug lite с его консолью для отладки
У него есть консоль, на которой работает JavaScript, что я и искал.
Действительно полезно для проверки элементов в IE 7. Спасибо! :)
Привет, я столкнулся с той же проблемой и нашел это приложение IETESTER. Это довольно круто, это приложение, в которое встроены IE 5.5,6 и 7. Неважно, какая у вас версия IE. Это позволяет вам иметь несколько версий рядом.
Если вы включили отладку javascript в параметрах IE и установили Visual Studio, вы даже можете отлаживать javascript в VS со всеми доступными вам параметрами отладки (часы, условные точки останова и т. д.)
Если вы хотите начать отладку до того, как возникнет ошибка, вам просто нужно поставить строку
debugger;
в ваш код JS, и это приведет вас в VS, чтобы начать отладку после этого оператора.
Для меня это совершенно потрясающе для тестирования обратной совместимости для JS-кода.
FireBug Lite: http://getfirebug.com/firebuglite
На домашней странице: «Совместимость со всеми основными браузерами: IE6 +»
Firebug Lite не поддерживает отладку javascript.
@DMan задыхаться ваше право! кажется, люди преодолевают это с помощью Crossfire: getfirebug.com/developer/api/crossfire0.1/symbols/…
Инструменты разработчика IE9 сработали для меня. Просто установите для пункта меню «Режим браузера» значение IE7.
Это полезно, но эмулированный IE7 не совсем то же самое.
Я думаю, это зависит от обстоятельств. Если я смогу воспроизвести проблему в режиме эмуляции IE9, я исправлю ее там. В противном случае Firebug Lite - хорошее решение, хотя вам нужно будет где-то установить IE7.
Ответ прост.

Потому что это ненадежно :( Все открытые билеты в моем текущем проекте, подключенном к IE7, не воспроизводятся в Vista или Windows 7
Может быть полезно, если ошибка воспроизводима. Но есть некоторые ошибки, которые возникают не в IE9 с режимом IE7, а в исходном IE7 (то же самое для IE8).
Запуск вашего кода с помощью инструмента статического анализа Javascript, такого как JSLint, может выявить некоторые распространенные ошибки IE7, такие как конечные запятые в определениях объектов.
Инструменты разработчика IE8 могут переключаться в режим IE7
Если вам все еще нужно отладить IE 7, режим эмуляции IE 11 работает очень хорошо.
Зайдите в меню: Dev Tools, затем в эмуляцию и установите ее. Он также дает информацию о строке ошибки.
Следующие инструменты отлично подходят для меня:
Обеспечьте удобный пользовательский интерфейс с такими функциями, как источник, стиль, DOM, скрипт, проверка HTML. Он также показывает фактическую ошибку в вашем JS-файле (какая строка, какой файл).
2) http://www.my-debugbar.com/wiki/CompanionJS/Installing
Предоставьте консоль для IE6 или IE7 (которая изначально не поддерживает)
Тем не менее, намного лучше, чем панель инструментов IE