![]() |
|
|
|||||||
| Javascript Här diskuteras det som rör Javascript, AJAX, DOM & DHTML. |
![]() |
|
|
Trådverktyg | Visningsalternativ |
|
|
#1 |
|
Medlem
Registrerad: 2003-04-02
Ort: Lund
Inlägg: 1 660
Lösningar: 64 |
Hur avgöra om Firefox?
HEJ!
Hur vet man att det är Firefox som är på besök? De koder jag hittar är den vanliga document.all för IE, annars (else alltså) är det något annat. Jag har hittat !document.getElementById i en annan tråd för att köra specialkod, och satte helt enkelt !!document.getElementById, vilket fungerar. Smart, men osnyggt! Först kom jag fram till !document.layers && !document.all vilket är något snyggare. Finns det något som är mer korrekt?
__________________
Johnny wF-råd: - är ditt inlägg förståeligt? - korrekturläs ditt inlägg, redigera stavfel - kom ihåg att markera det inlägg som löste problemet |
|
|
|
|
|
#2 |
|
Medlem
Registrerad: 2002-12-15
Ort: Hudiksvall
Inlägg: 5 477
Lösningar: 806 |
Browserdetektering är inte det lättaste; speciellt med tanke på att man i webbläsare som Opera har möjligheten att välja hur bläddraren skall identifieras.
Det bästa sättet tror jag är att använda objektdetektering, d.v.s. if (document.getElementById){ /* För webbläsare som klarar document.getElementById */ }. Annars kanske du kan göra enligt: Kod:
if (navigator.vendor && navigator.vendor.toLowerCase() == "firefox"){ /* Möjligtvis Firefox-specifikt */ }
|
|
|
|
|
|
Markerad som löst av J.N. #3 |
|
Medlem
Registrerad: 2003-04-02
Ort: Lund
Inlägg: 1 660
Lösningar: 64 |
HEJ!
Vän av ordning undrade säkert varför jag inte tog bort dubbla frågetecken i !!document.getElementById för att kontrollera det. Senare på dagen kom jag på att jag kunde förklarat att det var testat och inte ger true/false som resultat. Fast, nu testade jag med var ff = document.getElementById, och då fungerar det. Hade tydligen inte provat korrekt... Dessutom är det faktiskt det jag gör i det jag kom fram till. Jag nöjer mig med följande snutt, då jag egentligen inte behöver ha fram just FireFox. HTML-kod:
if (document.getElementById) ff=true; ![]() Fast, inte så länge till, se nedan. HTML-kod:
if (navigator.vendor && navigator.vendor.toLowerCase() == "firefox") alert("")
__________________
Johnny wF-råd: - är ditt inlägg förståeligt? - korrekturläs ditt inlägg, redigera stavfel - kom ihåg att markera det inlägg som löste problemet Senast redigerad av J.N., 2005-11-01 klockan 16:11 Anledning: Ny fakta! |
|
|
|
|
|
#4 |
|
Medlem
Registrerad: 2003-02-27
Ort: München
Inlägg: 779
Lösningar: 38 |
Jag avråder från att använda navigator.vendor för att detecta Firefox, eftersom detta har tagits bort i kommande version.
I 1.5 får man en tom sträng, så scriptet ovan kommer ej vara true. Varför navigator.vendor inte returnerar Firefox går att läsa här. Så för att lösa ditt problem, gör som Peter S sa först, använd dig av objektidentiering. |
|
|
|
|
|
#5 |
|
Medlem
Registrerad: 2002-12-15
Ort: Hudiksvall
Inlägg: 5 477
Lösningar: 806 |
Där ser man!
|
|
|
|
![]() |
| Trådverktyg | |
| Visningsalternativ | |
|
|