Přejít k navigační liště

Zdroják » Zprávičky » Nejkratší možná detekce Internet Exploreru má pouhých 9 znaků

Nejkratší možná detekce Internet Exploreru má pouhých 9 znaků

Před dvěma roky Dean Edwards hledal krátkou a elegantní detekci Internet Exploreru a přišel s pěkným řešením /*@cc_on!@*/false(pokud vás zajímá princip, přečtěte si o podmíněných komentářích v JavaScriptu Internet Exploreru). Již samovolně pak vznikla soutěž o nejkratší možnou detekci (zapojili se i Češi) a objevila se řada originálních nápadů, např./*@cc_on!@*/0; nebo superkrátký a pravděpodobně dosavadní vítěz //@cc_on=1 . Tyto výrazy vrací true v Internet Exploreru, v ostatních prohlížečích vrací  false.

Ačkoliv fungovaly spolehlivě, měly jednu chybu – byly špatně zapamatovatelné. Andrea Giammarchi přišel s dalším řešením, postaveném na chybě v IE, konkrétně na nerozpoznání escapovaného znaku „v“ (IE jej vidí jako písmeno „v“). Pro detekci IE vám tak postačí devíti znakový výraz 'v'=='v', který je již snadno zapamatovatelný.

Můžeme vůči němu namítat, že je se jedná o využití známé chyby prohlížeče, která může být jednoho dne (třeba v IE9) opravena a kód přestane fungovat. Můžeme ostatně namítat, že dnes bychom se měli jakékoliv detekci prohlížečů vyhnout obloukem, jak se třeba snaží v poslední verzi vývojáři jQuery, protože dnes už detekce prohlížečů není nutná. To vše nám ale nebrání v malé oslavě nového rekordmana o velikosti pouhých 9 znaků.

(Zdroj: Ajaxian)

Komentáře

Odebírat
Upozornit na
guest
1 Komentář
Nejstarší
Nejnovější Nejvíce hlasů
Daniel Steigerwald

jQuery přístup, tedy testovat přímo chování prohlížeče, bez detekce jeho konkrétní verze, nemůže vždy fungovat. Vlastně, v jQuery funguje pouze protože tento framework je sám o sobě dost omezený.. Bylo by krásné, kdybychom mohli všechno detekovat skrz Javascript, ale to prostě nejde. Příklady? backgroundImage cache pro IE6, tabindex pro neformulářové prvky, 2px bug pozice myšího kurzoru, memory leaks, existence specialních eventů (selectstart, mousewheel..) a tak dále.. I když musím říct, že se mi jQuery přístup líbí, prohlašovat, že detekce prohlížeče není třeba je blbost.

ISO, WIN, nebo MAC? Válka o kódování češtiny na webu

Kdo se webem zabýval na přelomu tisíciletí, zná ten pohled: stránka se načte a místo české věty se na ní objeví změť znaků jako ą, ľ a ». Nebyla to chyba monitoru ani písma. Byl to následek války, která se na českém internetu vedla po dlouhá léta. Šlo v ní o zdánlivou maličkost: jak do jednoho bajtu vměstnat písmeno „ř“. Podívejme se, kdo v ní proti komu stál, proč ji nešlo vyhrát a jak skončila.

Začal jako projekt studentů Matfyzu. Český BIRD dnes pomáhá řídit provoz na největších internetových uzlech

Internet drží pohromadě i díky místům, kde se propojují sítě poskytovatelů připojení, cloudů nebo videoslužeb. S předáváním informací o tom, kudy jsou jednotlivé sítě dostupné, jim ve Frankfurtu, Londýně i Amsterdamu pomáhá český BIRD. Začal jako studentský projekt, po první verzi z roku 2000 léta spíš dřímal a soustavný vývoj obnovil až CZ.NIC. Ve své úloze uspěl tak výrazně, že největší uzly nakonec začaly platit vývoj konkurenčního softwaru, aby nebyly závislé jen na něm.