Detekce prohlížečů pomocí XSLT funguje i s vypnutým JavaScriptem
Nálepky:
Manfred Staudinger publikoval ukázku umožňující detekci prohlížečů i v případě vypnutého JavaScriptu. Využívá k tomu podporu XSLT, kterou dnes již má většina prohlížečů, konkrétně vlastnosti vendor, se kterou lze v XSLT pracovat. V uvedené ukázce se nastaví barva zobrazeného čtverce podle prohlížeče, jaký právě používáte. Pokud by se nenastavovala barva, ale např. obrázek na pozadí, bude informace o právě používaném prohlížeči zaslána na server. Jedná se spíše o kuriozitu, která nenajde moc praktické uplatnění; tedy pokud zrovna nepotřebujete detekovat prohlížeče uživatelů s vypnutým JavaScriptem.
Nemám čas se tím teď zabývat, ale v IE to nefunguje, dostanu „tradiční“ hlášku:
Stránku XML nelze zobrazit
Vstup XML nelze zobrazit pomocí šablony stylů XSL. Opravte tuto chybu a klepněte na tlačítko Aktualizovat, nebo akci zopakujte později.
V jaké verzi? Mě to v IE funguje.
IE7. Nechal jsen dělat i screenshoty, http://browsershots.org/http://documenta.rudolphina.org/cond-css-demo.xml a tam je stejná hláška, jen v různých jazycích ve všech verzích IE.
Tohle mi hlásí JS konzola:
Řádek: 0
Znak: 0
Chyba: The server did not understand the request, or the request was invalid.
Kód: 0
Adresa URL:http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd
Adresa URL je DTD, ale tím se svými znalostmi končím.
Potom nejspíš server různým prohlížečům prohlížečům posílá různý MIME typ. A možná špatně parsuje UAstring – u některého IE se trefí dobře i jiného ne.
Přesně ten samý problém v IE7 na Win XP SP2.