Till sidans innehåll
 

Identifiering av din webbläsare

Den här sidan visar några av de vanligaste uppgifter som en webbplats kan läsa ut om din webbläsare, dels med hjälp av Javascript och dels utifrån den information som webbläsaren sänder vid hämtningen av sidor.

Denna information kan användas för att utöva klientdiskriminering eller plattformsdiskriminering.

Skriptbaserad information om din webbläsare

Det främsta användningsområdet är s.k. namnmagi.

Test: navigator.appName
Utfall:
Test: navigator.appCodeName
Utfall:
Test: navigator.appVersion
Utfall:
Test: navigator.platform
Utfall:
Test: navigator.userAgent
Utfall:
Test: navigator.vendor
Utfall:
Test: navigator.product
Utfall:

Skriptbaserad avkänning av din webbläsares egenskaper

Grundläggande tester

Nedanstående information talar om vilken modell av DHTML din webbläsare klarar av. Utfallet av dessa tester är mer tillförlitligt än det som kan härledas med de ovanstående funktionerna.

Resultatet "true" betyder att modellen stöds av din webbläsare.

Test: !!document.all
Utfall:
Test: !!document.layers
Utfall:
Test: !!document.getElementById
Utfall:

Funktioner som krävs för avancerade bookmarklets

Stöd för document.getElementById är avgörande för att avancerade bookmarklets ska fungera. En annan förutsättning är att din webbläsare klarar metoden Element.hasAttribute, vilket utläses av följande test. Testet ger negativt utfall i äldre versioner av Internet Explorer, fram till version 8.

Test: !!document.documentElement.hasAttribute
Utfall:

Vidare måste stöd finnas för Array.push:

Test: !![].push
Utfall:

De flesta bookmarklets kräver stöd för document.createElement:

Test: !!document.createElement
Utfall:

Finns stöd för några andra funktioner som behövs i varierande utsträckning?

Test: [!!document.createTextNode, !!document.createDocumentFragment, !!document.cloneNode]
Utfall:

Diverse

Följande test utläser huruvida din webbläsare tillåter skript att komma åt element utan att använda någon av ovanstånde accessfunktioner. Detta är en tvivelaktig egenskap hos Internet Explorer.

Test: id1.id
Utfall:

Klarar din webbläsare const-deklarationer? Det gör inte Internet Explorer.

Test: const t=true; t;
Utfall:

Lägger din webbläsare till ett extra element om du har ett avslutande komma i en array-deklaration? Det gör alla kända versioner av Internet Explorer.

Test: [1, ];
Utfall:
Test: [1, ].length == [1].length;
Utfall:

Klarar din webbläsare ett avslutande komma i en objektdeklaration? Äldre versioner av Internet Explorer (fram till version 8) klarar det inte.

Test: [{label_a: 1}];/* safe */
Utfall:
Test: [{label_a: 1,}];/* unsafe */
Utfall:

Se även Robin's HTML 4.0 Conformance Test - Scripts, för intressant information om lämplig media type för skript. Jag noterar att MSIE 6-8 inte exekverar skript som är märkta med <script type="application/x-javascript"> eller <script type="application/javascript">.

Information som är direkt tillgänglig på serversidan

Den information som är direkt tillgänglig på serversidan kan användas för att skräddarsy vad som ska skickas till din webbläsare. Speciellt intressant är User-Agent, som brukar användas för serverbaserad klientavkänning.

User-Agent
"CCBot/2.0 (http://commoncrawl.org/faq/)"
Referer
""
Accept
"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
Accept-charset
""
Accept-language
""
REMOTE_ADDR
"54.147.40.153"
SERVER_PROTOCOL
"HTTP/1.0"

Sidan uppdaterad: 2011-04-10.

Copyright © 2001-2017 Autark Datakonsult AB. Alla rättigheter förbehållna.