IE7でのJavaScriptのデバッグ


160

Internet Explorer 7でJavaScriptをデバッグする必要があります。

残念ながら、そのデフォルトのデバッガーは私に多くの情報を提供しません。エラーが表示されたページ(特定のスクリプトではない)と、行番号が表示されます。それが私の問題に関連しているかどうかはわかりません。

エラーを特定のスクリプト(Firebugのように)の行番号に絞り込むことができると便利です。

FirebugがFirefoxで行うように、IE7でJavaScriptをデバッグするためのアドオンはありますか?

ありがとうございました!

以下も参照してください。

IE7には「開​​発者モード」またはFirefox / Chrome / Safariのようなプラグインはありますか?

回答:


90

Web開発ヘルパーは非常に優れています。

IEのDevツールバーは、多くの場合に便利ですが、残念ながら、スクリプトのデバッグを行いません。


4
注目に値するのは、おそらく、詳細オプションで「デバッグを無効にする」をオフにする必要があることです。
Dan Rosenstark、2011

24
IE Dev Toolbarにスクリプトデバッグオプションが表示されず、詳細設定を変更してIE7を再起動しても、最新バージョンのWeb開発ヘルパーが機能しません。
stevebot 2011

9
上記のWeb開発ヘルパーリンクは無効です。これがここでホストされている同じツールであることを誰かが確認できますか?softpedia.com/get/Tweak/Browser-Tweak/...
RMorrisey

3
皮肉なことに、Web Dev HelperのソフトペディアダウンロードリンクがIE7で終了します!(恐ろしい「操作中止」エラー。)
ショーンマクミラン

1
リンクがマルウェアにつながると思います。

41

難しい真実は次のとおりです。IEの唯一の優れたデバッガーはVisual Studioです。

実際の取引にお金がない場合は、無料のVisual Web Developer 2008 Express Edition Visual Web Developer 2010 Express Editionをダウンロードしてください。前者では既に実行中のIEにデバッガーを接続できますが、後者ではできません(少なくとも、以前使用していたバージョンではできません)。それでも問題が解決しない場合は、1つの空のWebページで単純なプロジェクトを作成し、「実行」して(ブラウザーを起動し)、デバッグするページに移動して、デバッグを開始します。

マイクロソフトは、通常ライセンス制限付きで、さまざまなイベントでVisual Studio全体を提供していますが、自宅でいじくり回すことができます。彼らのスケジュールと景品のリストをチェックしてください。

別のヒント:最初に他のブラウザーでWebアプリケーションをデバッグしてみてください。Operaで大成功しました。どういうわけかOperaのIEのエミュレーションとそのバグはかなり近いものでしたが、デバッガの方がはるかに優れています。



4
IEの優れたデバッガはVSだけではありませんが、優れたデバッガはそれほど多くないことに同意します。それは無料ではないのですが、これは、私が長年使ってきた1 IE固有のJavaScriptデバッガである:javascript-debugger.com

VS 2008へのリンクがなくなりました。今度はVS 2012のページに移動します
Sean McMillan

VS 2012 Express Editionがあり、それはまだ無料です(古いリンクは実際にそれを指しています)。
Eugene Lazutkin 2013

1
VS2012 ExpressにはWindows 7が必要です。IE7をデバッグしようとしている場合は、役に立ちません。何が必要VS2010のWeb Expressです:microsoft.com/web/gallery/...
マイク・ポスト

32

あなたは それがかなり古いMicrosoftスクリプトデバッガを試してみたいかもしれませんが 、JavaScriptエラーに遭遇した場合、デバッガがポップアップしてどの行が混乱しているのかを示すという意味で非常に便利です。通常のサーフィンをしていると時々イライラするかもしれませんが、オフならオフにすることができます。

ここにも、このツールの使用方法に関する優れたスタートアップがあります。 方法:Internet ExplorerでJavaScriptをデバッグする


howtoリンクが壊れています。ここで更新されたリンクです:jonathanboutelle.com/2006/01/16/...
ダナ

サードパーティ製のソフトウェアをインストールする必要がない、優れた低摩擦デバッグルート。
Jon Hadley 2013

27

DebugBarを見つけました

Firebugほどではありませんが、近いです。


3
それでも、IEツールバーよりもずっと良い
Sam Saffron

2
なぜこれが受け入れられない答えなのか、私にはわかりません。IEの他のどのデバッガよりもはるかに優れています。
Tres

1
彼らのサイトで言及されている無料の「コンパニオンJS」が実際に最もよく機能することがわかりました。エラーが発生したJSファイルと行番号が正確にわかります。
タイラー

25

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を参照してください


6
Firebug liteはJavascriptを実行しません
Casebash 2012年

デバッグするコンソールを備えたFireBug liteに立ち寄りました
Eugene Gluhotorenko 2013

JavaScriptを実行するコンソールがあり、これが私が探していたものです。
Alex W

IE 7で要素を検査するのに本当に役立ちます。ありがとう!:)
Leniel Maccaferri 2014

7

Microsoft Script Editorは確かにオプションであり、私が試したものの中でより安定したものの1つです-IE8のデバッガーは素晴らしいですが、何らかの理由でDeveloper Toolsを起動するたびにIE8に時間がかかり、場合によっては最大で分、私のページのDOMツリーを検査します。そして、それは拷問であるすべてのページ更新でそれをしたいようです。

あなたはできる Microsoftスクリプトエディタで変数の内容を調べる:[デバッグ]> [ウィンドウ]の下でつつく場合は、などを見て、ローカル変数の検査をオンにすることができます

もう1つのオプションであるVisual Web Devはかさばるものの、かなりうまく機能します。セットアップするには、次のようにします(ここから盗みます):

  1. IEでデバッグをオンにする必要があります。[ツール]> [インターネットオプション]> [詳細設定]に移動し、[ スクリプトのデバッグ無効にする(Internet Explorer)]がオフになっていて、すべてのスクリプトエラーに関する通知表示するオンになっていることを確認します
  2. VWD内に新しい空のWebプロジェクトを作成する
  3. 右上のソリューションエクスプローラーでサイトを右クリックし、[参照]に移動して、デフォルトのブラウザーがIEに設定されていることを確認します(WebデベロッパーのIEがデフォルトのブラウザーでない場合は、この場合を想定するのが妥当です。それはデフォルトではありません...デフォルトでは)
  4. F5キーを押すと、IEが開きます。デバッグするページに移動します。
  5. VWDは、スクリプトエラーが発生した場合、またはJSファイルの1つにブレークポイントを設定した場合にいつでも開くようになります。デバッグしてください!

更新:ちなみに、IE8のその他の適切なデバッガーで私と同じ速度低下が発生する場合は、回避策があります-IEでエラーが発生したり、エラーが発生したりすると、「デバッグしますか?」ダイアログが表示され、はい、ヒットします。デバッガはすぐに起動します。デバッグモードに「まっすぐ」進むと、開発ツールはDOMを検査しないようです。それはあなたがF12を打ったときだけです。


私はこれをもう少しテストする必要がありますが、これまでのところ、IE8デバッガーは互換モードでブラウジングするときに高速に動作するようです。ゴーゴー!
dmkc 09年

1
VWDのExpress(無料)バージョンを使用している場合は、ステップ4の前にすべてのIEウィンドウを閉じていることを確認してください。IEを「所有」するためには、VWDがIEを新しく起動する必要があります。
rymo

3

IE8では開発ツールが大幅に改善されています。それまでは、Firefox用のJavaScriptを最初に記述してから、alert()ステートメントを使用してIEをデバッグするのが最善です。


IE8を待つことができない(誇大広告に耐えられる限り-まだベータ版をダウンロードしていない)
alex

更新したので、更新しました。Firebugのデバッガよりもデバッガの方が好きだと言っておく必要があります:)
Joel Coehoorn 2009年

@Joel、ただしデバッガは素晴らしいですが、(Firebugが持っている)私を困らせる点の1つは、「要素の検査」を選択できる右クリックのコンテキストメニューです。私の知る限りでは、IE8では開発者ツールを起動し、矢印をクリックして、検査する要素を見つける必要があります。
アレックス

3

Microsoft Script Editorを使用して、IEでJavaScriptをデバッグできます。Microsoft Script Debuggerよりバグが少ないですが、基本的な機能は同じですが、残念ながら、実行のステップ実行にかなり制限されています。変数やそのような便利なものを検査することはできません。また、奇妙な理由でOffice XP / 2003にのみ同梱されていました。あなたがゲームならもっと詳しい情報はここ

Eugene Lazutkinが述べたVisual Web Developer 2008 Express Editionをダウンロードしましたが、まだ試す機会がありませんでした。スクリプトエディター/デバッガーの前に試してみることをお勧めします。


3

それは完全なデバッガーではありませんが、私のDP_DEBUG拡張機能はいくつかの(私は思う)便利な機能を提供し、IE、Firefox、Opera(9+)で動作します。

複雑なJavaScriptオブジェクト(システムオブジェクトを含む)の視覚的表現を「ダンプ」し、ロギングとタイミングを簡略化できます。このコンポーネントは、コンポーネントを有効または無効にする簡単なメソッドを提供するため、必要に応じて、本番作業のためにデバッガーをそのままにしておくことができます。

DP_Debug


2

IE9開発者ツールが私に役立ちました。「ブラウザモード」メニュー項目をIE7に設定するだけです。


7
これは便利ですが、エミュレートされたIE7はまったく同じではありません。
アレックス

場合によります。IE9のエミュレートモードで問題を再現できる場合は、そこで修正します。それ以外の場合は、Firebug Liteが適切なソリューションです。ただし、IE7をどこかにインストールする必要があります。
Peter Tseng、2012年

1

ちょっと私は同じ問題に遭遇し、これがアプリケーションIETESTERであることを発見しました。それはかなり素晴らしいです、それはそれにIE 5.5、6、および7がバンドルされているアプリです。現在お持ちのIEのバージョンは関係ありません。これにより、複数のバージョンを並べて表示できます。

IEオプションでJavaScriptデバッグを有効にし、Visual Studioがインストールされている場合は、VSでJavaScriptをデバッグすることもできます。すべてのデバッグオプション(ウォッチ、条件付きブレークポイントなど)を使用できます。

エラーが発生する前にデバッグを開始したい場合は、単に行を置く必要があります

debugger;

あなたのJSコードに入れてください、そしてこれはVSにあなたを連れて来て、このステートメントの後でデバッグを始めます。

これは、JSコードの下位互換性をテストする上で私にとって絶対に驚くべきことです。


0

Internet Explorer 8を使用してから、開発者ツールを試してください。互換モードでもIE 7に基づいてデバッグできます


17
IE7!= IE8互換モード。非互換性があります。
ソーン̈2010年

1
+1 IE8では、エラーの原因となっているスクリプトのファイル名がわかります。
Sponsz大佐2010年

@thornですが、IE7モードがあります。(以前はなかったのでしょうか?)だから:通常の互換モード、IE7モード。
ANeves 2011年

1
@ANevesそれは同じもののためだけの別の名前だ
ソーン

4
@ANeves「IE7モード」は単に「互換モード」のように見えますが、ユーザーエージェントはIE7で使用されるものに変更されています。ただし、互換モードはそれほど互換性がないことを再度強調しておきます。たとえば、jQueryを介してスタイルプロパティをリセットすると、IE7(および他のブラウザ)では次のようになります$my.css('z-index', null)。IE8では、いわゆる互換モードであっても、このコードはエラーをスローします。:私はこのようなコードを書かなければならなかったので$my.css('z-index', ie8 ? 'auto' : null)
ソーン


0

答えは簡単です。

  1. Internet Explorer 9を入手する
  2. F12キーを押して開発者ツールをロードします
  3. ブラウザモードをIE7に切り替える

IE9でブラウザモードを切り替える


6
信頼性が低いため:(IE7に接続されている現在のプロジェクトで開いているすべてのチケットは、Windows 7のVistaでは再現できません
AlfeG

4
エラーが再現可能な場合、役に立ちます。しかし、IE7モードのIE9ではなく、元のIE7(IE8でも同じ)で発生するいくつかのエラーがあります
yunzen

0

JSLintなどのJavascript静的分析ツールを介してコードを実行すると、オブジェクト定義の末尾のコンマなど、いくつかの一般的なIE7エラーをキャッチできます。



0

それでもIE 7をデバッグする必要がある場合、IE 11のエミュレーションモードはかなりうまく機能しています。

メニューに移動:開発ツール、次にエミュレーションして設定します。エラー行情報も提供します。


-1

次のツールは私にとってはうまくいきます:

1)http://www.debugbar.com/

ソース、スタイル、DOM、スクリプト、HTMLチェックなどの機能を備えた便利なUIを提供します。また、JSファイル(どの行、どのファイル)の実際のエラーも表示されます。

2)http://www.my-debugbar.com/wiki/CompanionJS/Installing

IE6またはIE7のコンソールを提供します(元々はサポートしていません)

  • スクリーンショット

ここに画像の説明を入力してください

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.