Inte öppna länkar i nytt fönster

Detta är punkt tjugofem i listan med hygienfaktorer, det där du ska kolla upp någon gång emellanåt.

Att öppna länkar i ett nytt fönster är ett effektivt sätt att finta sina besökare, de kommer inte kunna använda bakåt-knappen. Därmed inför man ett onödigt krav på att användaren ska vara uppmärksam just när det nya fönstret öppnas samt att hen ska komma ihåg detta senare.

Men, men, hur ska vi då kunna behålla besökaren?

Alla argument jag hört om varför man gärna vill öppna länkar i nytt fönster är en förklädd välvilja om besökaren, där man har det oemotsagda antagandet att detta är vad användaren vill.

Jag skulle vilja påstå att användare känner till bakåt-knappen, att det inte är användbart att tvinga oss att komma ihåg att sidan man hamnade på är i en ny flik eller fönster (vilket gör att bakåt inte fungerar).

Men min absolut största favorit av dem alla är när man väljer att öppna länkar i ett nytt namngivet fönster. Detta görs, om man nu kollar HTML-kod, genom att sätta attributet target till något, exempelvis target=“dokumentfonster”.

Det som händer då är att första gången användaren klickar på en länk öppnas ett nytt fönster, sedan kommer varje följande länk att ersätta innehållet i detta namngivna fönster/flik. Så om man har en lista med länkar där alla hänvisar till samma target kommer flera klick leda till att endast det senaste är inladdat, när man kanske ville ha alla de man klickade på.

Att öppna nya fönster för besökarens skull, åt besökaren, är bara förvirrande för alla inblandade och det det är dessutom en del av webbriktlinjer.se att låta bakåknappen fungera vilket den inte gör om man öppnar i nya fönster.

Nytt fönster är i strid med strikt tolkning av framgångsfaktorerna för tillgänglighetsriktlinjen WCAG

Även fast de allra flesta inte strävar efter att till fullo leva upp till WCAG:s mest strikta nivå, så är det ju otvetydigt att “rätt” sätt att hantera länkar inte är att öppna i nya fönster till höger och vänster.

Although not required for conformance, the following additional techniques should be considered in order to make content more accessible. Not all techniques can be used or would be effective in all situations.

  • Opening new windows by providing normal hyperlinks without the target attribute (future link), because many user agents allow users to open links in another window or tab.
  • G200: Opening new windows and tabs from a link only when necessary

W3C konstaterar alltså i success criterion 3.2.5 att man ska undvika att överraska användare och att användare själva kan öppna länkar i länkar i nytt fönster om de vill.

I G200 finns följande rekommendation:

The objective of this technique is to limit the use of links or buttons that open new windows or tabs within Web content. In general, it is better not to open new windows and tabs since they can be disorienting for people, especially people who have difficulty perceiving visual content.

Där ges också exempel på när det kan vara befogat med nya fönster, nämligen när:

  1. Opening a page containing context-sensitive information, such as help instructions, or an alternate means of completing a form, such as a calendar-based date picker, will significantly disrupt a multi-step workflow, such as filling in and submitting a form, if the page is opened in the same window or tab.
  2. The user is logged into a secured area of a site, and following a link to a page outside of the secured area would terminate the user’s logon. In this case opening external links in an external window allows the user to access such references while keeping their login active in the original window.

Det dessa två exempel indikerar är att ett desktop first-perspektiv, frågan är om W3C skulle resonera på samma sätt mobilt. Dessutom förutsätter de lite att man inte tänker designa om användarens flöde i webbapplikationen.

För de som vill leva efter god praxis, oavsett vald ambitionsnivå kring tillgänglighet, så är frågan om länkar i nya fönster egentligen ett enkelt steg åt rätt riktning – ge tusan i det 🙂

Nytt fönster är en säkerhetsrisk

Om nu inte det var argument nog så är det också en säkerhetsrisk att öppna länkar i nytt fönster, i alla fall genom target=”_blank” på länkelementet. Det går då nämligen att på den (oftast externa webbplatsen) att ta del av innehållet på ursprungssidan med hjälp av lite Javascript-kod vilket Alex på Jitbit dokumenterat.

Med andra ord skall man aldrig öppna externa länkar i nytt fönster. Du har ingen kontroll över ifall de externa webbplatserna du länkar till har säkerhetsproblem och vad värre är så lär de knappast komma på att varna dig under tiden de lagar sitt säkerhetshål – om de nu någonsin gör det.

Verktyg för länkar som öppnar i nya fönster

Mig veterligen finns inget verktyg som gör detta i en större skala. Om du har en egen sökmotor eller annan teknik som har en lokal kopia av alla sidors HTML kan du söka efter target= för att hitta dessa övertramp.

Ofta är dessa lösningar systematiska och följer systemet. Kolla därför in hur länkar i dokumentlistor fungerar, hur det som följer publiceringsmallarna löser detta.

Därefter ser du till att ta bort funktionen ur ditt publiceringssystem 🙂