XHTML-fråga

Tråden skapades och har fått 13 svar. Det senaste inlägget skrevs .
1

I XHTML Strict får man ju inte använda attributet target till en <a href>-tag för att t ex öppna en länk i ett nytt fönster. Hur gör man då?? Har sökt som en dåre på webben utan att hitta det...

  • Medlem
  • Stockholm
  • 2004-06-11 10:50

Egentligen är det ju inte meningen att man ska kunna ställa in det i strict men jag vet att man kan komma förbi det med något javascript, kommer dock inte ihåg var jag såg det nånstans dock...

Kan ha varit www.webforum.nu

Posta gärna svaret här om du hittar det.

Javascript:

<a href="http://99mac.se" onclick="window.open('http://99mac.se'); return false;">99mac</a>

Ja, med JavaScript går det ju, men det är fusk! Dessutom vill jag bara använda JS om det är absolut nödvändigt.

  • Medlem
  • Stockholm
  • 2004-06-11 11:37
Ursprungligen av Michael Nord:

Ja, med JavaScript går det ju, men det är fusk! Dessutom vill jag bara använda JS om det är absolut nödvändigt.

JavaScript är det som gäller då, men det går iaf att göra lite elegantare än exemplet ovan genom att använda "this.href" istället för att meka in URL:en två gånger.

<a href="http://99mac.se" onclick="window.open(this.href);return false;">99mac</a>

Eller ännu hellre göra en JavaScript-funktion som tar hand om det, typ onclick="openWin(this.href);"

...men påtvinga fönsteröppning är ett otyg tycker jag. Det borde vara upp till användaren att bestämma var länkarna ska öppnas. Givetvis kan det finnas undantag, men rent generellt.

Här finns ett gammalt tips http://www.zeldman.com/daily/0503a.shtml Scrolla ner lite.
Eller så kanske den här artikeln http://www.alistapart.com/articles/popuplinks/ kan ge dig några tips.

Har kollat runt lite igen. Det verkar som om det inte finns någon lösning förutom att använda JavaScript. Åtminstone inte om man vill hålla sig till Strict-specifikationen.

Såg inte Pelles tips innan jag svarade:

Zeldmans artikel är intressant, men han påpekar samma sak som andra gjort: visst, man kan ändra specifikationen (DTD-dokumentet), men det kan leda till andra problem, och dessutom skulle man lika bra kunna hålla sig till Transitional-specifikationen i så fall.

Det är rimligt att anta att W3C har tänkt att öppna nya fönster faller utanför ramen vad gäller markup (det är något som browsern gör, och har inte med HTML att göra). Alltså faller det inom ramen för DOM, och då kan man använda JavaScript.

Själv tycker jag nog att de varit lite korttänkta...

target attributen för länkar finns inte med i xhtml1.0 strict. alltså finns det inget sätt att uppnå det du vill utan att använda javascript. Tanken/motivet med att det inte finns är väl att det skall vara upp till besökaren att välja hur en länk ska öppnas och inte sidskaparen, vettigt IMHO..

Jo, men det är väl tyvärr långtifrån alla besökare som vet hur man gör för att öppna länkar på andra sätt än det specificerade...

Min strategi är: Så lite popupfönster som det bara är möjligt.
Om det är få anv som vet hur man öppnar ett fönster är inget problem de brukar kunna använda back/forward kanpparna i browsern. Kan de inte det ska de inte använda internet.

Jo, men det finns ju tillfällen då det inte är helt fel att kunna se två sidor (dokument) samtidigt...

men om besökaren tycker att det är helt fel då?

titta på bara på diskusionerna här på 99mac ang. att vissa saker öppnas i ett nytt fönster...

Besökaren? Det är väl inte besökaren som bestämmer??

1
Bevaka tråden