Thomas Bandt

Über mich | Kontakt | Archiv

XHTML Strict - Alternative für das Target-Attribut

Wird XHTML Strict als Doctype verwendet, kann man das Target-Attribut eines Hrefs nicht mehr nutzen. Wer nun nicht zurück zu XHTML Transitional möchte, kann sich aber mit JavaScript behelfen:

<a href="http://www.69grad.de" onclick="window.open(this.href);return false;">69°</a>

Oder:

<a href="http://www.69grad.de" onclick="window.open(this.href, '_blank');return false;">69°</a>

Letztendlich ändert sich für den Benutzer nichts, wer will kann auch weiterhin etwa mittels mittlerer Maustaste bestimmen, dass der Link sich in einem Tab öffnet, auch sonst ist das Verhalten der Browser (getestet IE7, Firefox und Opera) das gleiche. Wer JavaScript nicht aktiviert hat, erreicht die Links ebenfalls, weil das Href-Attribut ja ganz normal gesetzt ist.

Auch aus "ethischen Gründen" spricht in meinen Augen nichts dagegen - ob mit JavaScript oder Target-Atrribut, der Benutzer weiß so oder so nicht, ob der Link ein neues Fenster öffnet. Was man als Hardliner natürlich verteufeln kann, schließlich wurde das Target-Attribut ja abgeschafft, um dem User die Wahl zu lassen. Sei es drum, manchmal geht es eben nicht anders :-).

Kommentare

  1. Jürgen Gutsch schrieb am Dienstag, 30. Oktober 2007 08:54:00 Uhr:

    Hi Thomas,

    wenn man es ganz geneu nehmen möchte und alternative Eingabegeräte unterstützen möchte, sollte zusätzlich zu dem onClick Event auch das onKeyPress Event berücksichtigt werden.
  2. Thomas schrieb am Dienstag, 30. Oktober 2007 09:39:00 Uhr:

    Da hast du Recht, obwohl sich dann die Frage stellt ob man in dem Fall wirklich ein neues Fenster aufmachen muss, oder ob es dann nicht tatsächlich besser wäre darauf zu verzichten.
  3. Der Hausmeister schrieb am Samstag, 3. November 2007 14:25:00 Uhr:

    Mir dreht sich bei solchen Vorschlägen immer der Magen um: JavaScript ist hierfür KEINE Lösung, sondern eine "Vergewaltigung" von HTML! Ja, es GIBT Leute, die JavaScript ganz ausschalten oder nur auf bestimmten Sites aktivieren! Und ich finde es immer wieder eine Riesenfrechheit, wenn mir eine Website vorschreiben will, daß sich für bestimmte Informationen ein neues Fenster öffnen soll. Das ist eine Bevormundung und Enteignung des Anwenders!
  4. Der Hausmeister schrieb am Samstag, 3. November 2007 14:37:00 Uhr:

    Ich nochmal. Sorry, wenn mein Kommentar vorhin etwas hart klang, aber ich rege mich nunmal immer sehr auf, wenn ich JavaScript als Ersatz für HTML sehe. Bitte nicht persönlich nehmen, ist so nicht gemeint! ;)
  5. Thomas schrieb am Samstag, 3. November 2007 14:54:00 Uhr:

    JavaScript ist nie ein Ersatz für HTML sondern immer eine Erweiterung. Wenn jemand JS nicht aktiviert hat wird er sich an der Lösung nicht stören, alle anderen mögen sich vielleicht ärgern - dafür hat der Kunde aber bekommen was er wollte.

    Das Leben ist kein Ponyhof.


« Zurück  |  Weiter »