2009-02-21 4 views
9

J'utilise PHP/jQuery et JavaScript. Je suis en train de tester le code JavaScript dans Firefox en utilisant Firebug. Y at-il quelque chose de similaire pour Internet   Explorer?Internet Explorer et ses défauts (pas d'outil de débogage semblable à Firebug)

J'ai du mal à faire en sorte qu'il ressemble/fonctionne de la même façon sur Internet   Explorer   7 et Internet Explorer 8.

Existe-t-il des outils pour résoudre ce problème? Ou des normes que je dois suivre? Et aussi, quel débogueur peut être recommandé?

+0

J'espère que mon nettoyage aide. Si j'ai quelque chose de mal, n'hésitez pas à le changer. – benlumley

+1

Cela devrait avoir un titre plus descriptif! –

+0

@Dana Robinson, suggérez-vous que IE a plus d'un problème? –

Répondre

5

Vous pouvez forcer IE8 à utiliser le même moteur de rendu que IE7.

Koenig Chris de Microsoft explique dans un blog post

En termes de débogueurs pour IE je recommande Visual Studio Express. C'est de loin le meilleur débogueur pour IE. Bien qu'il ne soit pas aussi étroitement intégré que Firebug, il est roi pour le débogage JS. Vous pouvez définir des points d'arrêt, parcourir le code et effectuer toutes les opérations normales que vous souhaitez effectuer depuis un débogueur. Il n'a pas l'inspection HTML de Firebug mais la barre d'outils IE Developer peut vous y aider.

+0

Il a demandé un outil similaire à la firebug :) –

+0

mais il est également intéressé à savoir s'il existe d'autres moyens de résoudre le problème - ce qui était peut-être plus apparent à la question initiale. – benlumley

+0

C'était le "look/work" le même que j'ai pensé que c'était utile. – sh1mmer

5

Il est Internet Explorer Developer Toolbar qui @Paolo Bergantino déjà mentionné. C'est aussi utile que Firebug. Mais une autre solution pourrait être Firebug Lite qui fonctionne pour Internet   Explorer, Opera, et Safari.

Et une manière très créative de l'implémenter via bookmarklets est décrite dans Firebug console for IE.

+0

J'ai trouvé Firebug Lite moins utile dans mon expérience. IE a vraiment besoin de meilleurs outils. – cdmckay

+1

Je peux difficilement convenir que la barre d'outils IE dev est aussi utile que Firebug. Avec Firebug, vous pouvez définir des points d'arrêt dans JS et observer tous les appels http qui se déroulent en arrière-plan, et cela ne fait que rayer la surface. Supposons que ce soit le meilleur pour le moment pour IE. –

0

Je ne l'ai pas utilisé, mais les développeurs de Firebug ont créé Firebug Lite pour une utilisation dans d'autres navigateurs. C'est une solution JavaScript pure, donc elle ne repose sur rien d'installé localement.

4

Internet Explorer 8 dispose d'une boîte à outils de débogage très similaire à celle de Firebug. Appuyez simplement sur F12 pour l'afficher. Puisque vous pouvez forcer IE8 à utiliser le moteur de rendu IE7, vous pourrez déboguer les deux en l'utilisant.

+0

Intéressant, comment forcer IE8 à utiliser le moteur de rendu IE7. Est-ce la fonctionnalité de vue de compatibilité? – erikkallen

+0

Il suffit d'insérer cette méta-balise dans la tête de vos documents: '' – glomad

+0

Le débogueur de Developer Tool IE8 est en fait meilleur que Firebug. Firebug perd parfois la trace du code en cours d'exécution et il n'est pas possible de déboguer des fichiers croisés qui apparaissent sur une seule ligne de code. Le débogueur dans IE8 gère parfaitement tous ces problèmes parce que (je suppose) il est plus étroitement intégré avec le navigateur. –

0

Pour les versions d'Internet   Explorer, lancez une commande "debugger"

function MakeInternet(obj) 
{ 
    debugger 

    internet = obj; 
} 

dans votre code JavaScript, et il vous permettra de choisir la façon dont vous voulez déboguer.

1

Pour un équivalent au panneau net Firebug, vous pouvez utiliser le nouveau MSFast de MySpace.

1

Une excellente alternative que je l'ai utilisé pendant des années est DebugBar.

Il est:

Il existe un certain nombre de bookmarklets utiles et de scripts de type Greasemonkey, principalement XRay. Malheureusement, aucun d'entre eux n'est proche de Firebug, mais encore une fois, ils essaient d'apprivoiser une bête beaucoup plus vicieuse.