2008-01-17

Znacznik <script> w IE7

Straciłem ładnych parę godzin szukając przyczyny dlaczego aplikacja GWT jest niewidoczna w IE7. Działała bez problemu w Firefoksie i Safari, a w Internet Explorerze wyświetlana była pusta strona. Ponieważ to GWT, to najpierw sprawdziłem kod w Javie, potem wygenerowane JavaScripty - nic podejrzanego nie było widać. Ostatecznie okazało się że problem tkwi w stronie, na której aplikacja jest umieszczona. IE7 poniższy zapis traktuje jako błędny i ignoruje go:
<script language="javascript" src="gwt.js"/>
Wystarczy dodać znacznik zamykający:
<script language="javascript" src="gwt.js"></script>
i skrypt jest poprawnie wczytywany. Po tej historii sprawdziłem stronę walidatorem W3C i rzeczywiście:
The sequence <FOO /> can be interpreted in at least two different ways, depending on the DOCTYPE of the document. For HMTL 4.01 Strict, the '/' terminates the tag <FOO (with an implied '>'). However, since many browsers don't interpret it this way, even in the presence of an HMTL 4.01 Strict DOCTYPE, it is best to avoid it completely in pure HTML documents and reserve its use solely for those written in XHTML.

Brak komentarzy

© The Useful Pot To Keep Things In
Maira Gall