Vilken webbläsare används? |
![]() ![]() |
Den dåliga lösningen
En del javaskript fungerar i Internet Explorer med inte i Netscape och tvärtom. En del skript kräver dessutom en tillräckligt ny webbläsarversion för att fungera. En vanlig men mycket dålig lösning är då att tala om för besökaren att han har fel webbläsare, eller en för gammal webbläsare. Eller - vilket är ännu värre skicka besökaren till en nedladdningssida där han kan hämta en annan webbläsare än den han redan är nöjd med! Den bra lösningenI stället använder vi ett skript som först undersöker vilken webbläsare besökaren använder, och sedan skickar honom vidare till en sida som lämpar sig för just den webbläsaren. Detta skript placerar vi på en ny sida, vars enda funktion är just att undersöka vilken webbläsare som används och skicka besökaren till rätt sida. Själva sidan med skriptet skall aldrig visas. Tidigare, i avsnittet om lösenord, lärde vi oss att använda den här metoden för att öppna en sida från ett javaskript: |
if (sesam==sesam1) |
Det vill säga: Om "sesam" är lika med "sesam1" skall sidan pass2.html öppnas. Om "sesam" inte är lika med "sesam1" skall sidan ../10.html öppnas. Det här skall i ombyggt skick vara med på en sida som öppnas med en länk. Men när det gäller webbläsare finns det mer än två möjligheter. Besökaren kan använda Netscape, Internet Explorer eller något annat. Därför behöver vi ytterligare en else-sats, som tar hand om situationen där besökaren varken använder Netscape eller Internet Explorer. Utan denna extra else-sats, öppnas sidan som innehåller skriptet och besökaren ställs inför en till synes helt tom sida. Först tar vi den variabel som undersöker vilken webbläsare som används: |
var webblasare=navigator.appName; |
Det vill säga: Variabeln webblasare skall vara webbläsarens (navigator) namn (appName). Nu sätter vi in detta i skriptet: |
<SCRIPT language="JavaScript"> |
Och lägger till de delar som skickar besökaren vidare till rätt sida: |
<SCRIPT language="JavaScript"> |
if (webblasare=="Netscape") if (webblasare=="Microsoft Internet Explorer") window.location="annat.html"; Här kan du testa det här skriptet och öppna rätt sida för din webbläsare WebbläsarversionerMen det är inte bara webbläsaren som sådan som inverkar på skriptkörningen ibland handlar det dessutom om vilken version webbläsaren har. Då använder vi följande: |
var webblasarVersion=parseInt(navigator.appVersion); |
Det vill säga: Variabeln "webblasarVersion" skall vara heltalsdelen (parseInt) av webbläsarens (navigator) version (appVersion). Så noga att vi måste ta reda på om det är Netscape 4.51 eller Internet Explorer 5.50 behöver vi normalt inte vara; vi nöjer oss med Netscape 4 och Internet Explorer 5. Nu petar vi in detta i ett skript. Detta placerar vi på en sida som skall undersöka om webbläsarversionen är Netscape 3+ eller Internet Explorer 4+. När detta är gjort skall besökaren skickas vidare till en sida som är anpassad för webbläsarversionen: |
<SCRIPT language="JavaScript"> |
if ((webblasare=="Netscape" && webblasarVersion>=3) || (webblasare=="Microsoft Internet Explorer" && webblasarVersion>=4)) window.location="gamla.html"; Här behöver vi ingen tredje valmöjlighet, eftersom det bara finns två svar. Jämförande och logiska operatorerI if-satsen ovan använde vi jämförande och logiska operatorer. Läs mer om dessa här. |
![]() ![]() |
© SupportData.Net |