woensdag, januari 16, 2008

javascript debuggen met vs2008

Helemaal blij was ik met mijn zoekwoorden script. Totdat mijn vrouw zegt: "Mijn pc doet raar, ik kan je blog niet meer bekijken". En inderdaad wanneer ik mijn blog opende zag ik deze prachtige foutmelding:

image

In eerste instantie dacht ik dat het probleem bij VISTA lag, bij IE7 of bij de beveiligingsinstellingen. Maar toen ik het op mijn eigen laptop probeerde met IE6 kreeg ik het zelfde probleem voorgeschoteld.

image

mmm, dat betekend niet veel goeds!  Al snel kwam ik erachter dat het aan mijn nieuwe script moest liggen. En hoe weet ik niet meer, maar ineens was ik javascript aan het debuggen in Visual Studio 2008. Eerst heb ik in IE het javascript debuggen aangezet door een vinkje uit te zetten: Tools > Internet options > advanced > disable script debugging.

Daarna onder: view > script debugger > break at next statement. Een F5 op de pagina en voila. De javascript debugger!

image

Het is werkelijk prachtig: breakpoints, steppen watchwindow. Alles wat je wilt! Het eerste probleem was dan ook snel opgelost (ik probeerde een element toe te voegen aan een script tag). Het tweede probleem heb ik proefondervindelijk opgelost: een script tag mag in IE blijkbaar geen selfclosing tag zijn. Dus geen: <script /> maar <script></script> nooit geweten.

Met deze oplossing had ik mijn probleem gedeeltelijk opgelost: ik had de inhoud die ik verwachte maar helaas IE bleef crashen. Na wat speurwerk op internet kwam ik erachter dat IE niet blij wordt wanneer ik de DOM aan pas terwijl de pagina nog niet geladen is. Iets wat ik onze javascript developer ook weleens heb horen zeggen. Dus heb ik de code in de onload functie gezet. En zie daar: deze pagina is weer te lezen in IE!

Geen opmerkingen: