Milyen paranccsal tudom ellenorizni, hogy milyen bongeszot hasznal a felhasznalo? Es milyen bongeszoket ismer fel ez a programocska? Mozilla es Opera erdekelne legfokeppen.
Ne haragudj -boogie- de ez nem valasz a kerdesemre. En azt kerdeztem, hogy hogyan lehet...
De hogy a kivancsisagodat kielegitsem: az Opera maskepp jeleniti meg az oldalt mint az IE.
A böngésző detektálás általánosságban a legrosszabb dolog, amit csinálhatsz. A böngészőről a verziója/neve alapján alkotott elképzelésed lehet, hogy hamar összeomlik, ha egy plugint telepítenek a böngészőhöz (ami rögtön ezután elkezd támogatni valamilyen egzotikus szabványt, amit használni akarsz), vagy ha megjelenik egy új böngésző, ami átveri a detektálódat. Konkrétan ezutóbbi ok miatt van most már minden böngésző azonosítóban a "Mozilla" karaktersorozat.
Ezért megismételném Boogie kérdését, hogy mit szeretnél ellenőrizni? Mindig a konkrét szolgáltatás / tulajdonság / függvény meglétére kell tesztelni, és amennyire csak lehet, el kell vetni az általános böngésző detektálókat.
Fúú! Ez a téma engem is nagyon érdekelne mélyen tisztelt Goba úr!
Én csak arra használom a böngésződetektálást, hogy figyelmeztessem a látogatót, ha olyan böngészővel látogat az oldalra, amin nem lett teszteve, hogy ne érje meglepetés, ha valami nem mükszik tökéletesen. Persze néha előfordul, hogy nem találok olyan megoldást, ami minden(általam tesztelésre használt) böngészőn megfelelő. Olyankor készítek egy detektálós feltételes elágazást -ez aztán a fogalmazás-, de ez csak általános böngészö detektálást használ.
De jó lenne bővebbet tudni erről a plugines dologról, meg erről: "Mindig a konkrét szolgáltatás / tulajdonság / függvény meglétére kell tesztelni,"
Lásd a másik hozzászólásom. Ha használsz egy függvényt, akkor azt nézzed meg, hogy az éppen aktuális böngésző támogatja-e. Ha igen, használhatod.
A másik dolog, hogy a figyelmeztetés, miszerint nem olyan böngészőt használ, amiben tesztelve lett, megint egy rossz szokás. Ha nem megy az oldal, akkor a felhasználó látni fogja, amúgy meg minek? :)
Amúgy pedig szabványos (pl. DOM) megoldásokat kell használni, és ellenőrizni sem kell, hogy megy-e, mert menni fog. :)
Azért azt is érdemes ellenőrizni, hogy a DOM megfelelő részei megvannak-e, mert nem minden böngésző rendelkezik teljes DOM támogatással. Ezért azt sem lehet mondani, hogy ha van DOM támogatás, akkor egy adott DOM szint minden részét támogatná a böngésző.
Tehát a dolog úgy működik, hogy ha egy konkrét függvényt vagy tömböt, vagy kollekciót, stb. csak önmagában egy feltételben adod meg, akkor az nem hívodik meg, hanem a létezéséről kapsz információt. Például:
if (document.getElementById) { okossag = document.getElementById('okossag'); }
else if (document.all) { okossag = document.all['okossag']; }
// itt meg tovabbi modszereket lehet probalni, vagy meg kell
// szakitani a tovabbi resz mukodeset, mert ha egyik fenti reszbe sem
// ment be, akkor nincs meg az az objektum
Ez persze csak példa, mindig a konkrét használni kívánt függvény, kollekció, stb ellenőrizendő.
a figyelmeztetést azért használom, mert lehet hogy megy az oldal neki csak nem 100%-os, akkor tudja hogy mivel nézheti meg jól, és nem kezdi el csapkodni a monitort, mert én azt tanultam, hogy a felhasználót mindenről informálni kell, vagyis hogy a legalacsonyabb értelmi képességü is elboldoguljon.
A szándék nem rossz, csak a megvalósítás hangzik nagyon mellékvágányosnak. Először is ha valami kritikus szolgáltatás van az oldalon, ami nem megy, csak akkor kellene szólni. Malév oldal például figyelmeztet, hogy nem fog jól menni Mozillával és nem is megy. Ha mellékes, csicsa dolog nem megy, akkor nem kell zaklatni a usert. Tehát ha valamit a user akar használni, és nem megy, akkor kell figyelmeztetni. Ha csak az oldalra téved, akkor nem kellene rászólni, hogy nem jó böngészőt használ.
Miért szeretnéd?
-boogie-
Azért
De hogy a kivancsisagodat kielegitsem: az Opera maskepp jeleniti meg az oldalt mint az IE.
A kérdés nem komplett!
Ezért megismételném Boogie kérdését, hogy mit szeretnél ellenőrizni? Mindig a konkrét szolgáltatás / tulajdonság / függvény meglétére kell tesztelni, és amennyire csak lehet, el kell vetni az általános böngésző detektálókat.
Fúú! Ez a téma engem is na
Én csak arra használom a böngésződetektálást, hogy figyelmeztessem a látogatót, ha olyan böngészővel látogat az oldalra, amin nem lett teszteve, hogy ne érje meglepetés, ha valami nem mükszik tökéletesen. Persze néha előfordul, hogy nem találok olyan megoldást, ami minden(általam tesztelésre használt) böngészőn megfelelő. Olyankor készítek egy detektálós feltételes elágazást -ez aztán a fogalmazás-, de ez csak általános böngészö detektálást használ.
De jó lenne bővebbet tudni erről a plugines dologról, meg erről: "Mindig a konkrét szolgáltatás / tulajdonság / függvény meglétére kell tesztelni,"
Háát.
A másik dolog, hogy a figyelmeztetés, miszerint nem olyan böngészőt használ, amiben tesztelve lett, megint egy rossz szokás. Ha nem megy az oldal, akkor a felhasználó látni fogja, amúgy meg minek? :)
Amúgy pedig szabványos (pl. DOM) megoldásokat kell használni, és ellenőrizni sem kell, hogy megy-e, mert menni fog. :)
-boogie-
DOM-ot is ellenőrizd
Tehát a dolog úgy működik, hogy ha egy konkrét függvényt vagy tömböt, vagy kollekciót, stb. csak önmagában egy feltételben adod meg, akkor az nem hívodik meg, hanem a létezéséről kapsz információt. Például:
szabvany DOM
De jo is lenne :)
a figyelmeztetést azért has
figyelmeztetés
Konkrét funkció
-boogie-