Javascript og Internet Explorer er en katastrofe
Skrevet i Internet Explorer, Teknik, Windows den 30. sep 2008
Internet Explorer har alle dage irriteret mig. Indtil nu, har det som har irriteret mig været at når man designet et website så skal man ofte tage højde for at IE tolker siden anderledes end de fleste andre browser.
I dag kom så endnu en overraskelse, som kan give enhver udvikler mareridt hver nat!
I forbindelse med implementering af et webanalyse værktøj for en kunde, har jeg været med til at udvikle og fejlsikre noget JavaScript, som nu viser sig at give 2 forskellige resultater i henholdsvis Firefox, Internet Explorer og Safari.
Det er JavaScript funktionen document.getElementById() som Internet Explorer tolker på en lidt anden måde end forventet.
Som funktionen antyder, så skal den hente et HTML element, men et bestemt ID. Men hvad nu hvis den skal lede efter et HTML element med ID’et ’test’ men der ikke er noget ID der hedder ’test’? Ja, så ser vi da bare om der er noget der har et name der er sat til ’test’ og så tager vi den, det må være det samme jo…? NEJ NEJ OG NEJ! Hvad er nu det for noget?
Hvornår er fri fortolkning af kode og standard funktioner blevet indført? Hvordan skal jeg som udvikler, kunne udvikle noget der virker i alle browsers – når bare en af dem frit tolker min kode?
Heldigvis er det ikke et direkte problem for mit stump kode, men hvad med alle dem der udvikler AJAX sites? Jeg er glad for at jeg ikke udvikler AJAX sites til dagligt, for det ville da være ekstra benzin til bålet, hvis man skulle tage højde for dette når man udvikler.
Er der andre der har oplevet underlig opførsel med JavaScript kode i forskellige browsers, så smid en kommentar da det er ganske interessant, når man nu skriver JavaScript til dagligt ☺

Skriv en kommentar