dedlfix: IE9 macht JS-Manipulationen rückgängig?!?

Beitrag lesen

Hi!

Aber ich halte es für sinnvoll, sich auf eine immer einheitliche Schreibweise festzulegen, und da ist href="javascript:;" meiner Meinung nach die sinnvollste.

Netter Versuch, sich das Leben einfacher zu machen. Das konsequente Durchsetzen scheitert aber in der Praxis oftmals daran, dass man individuelle Lösungen braucht. Und dann war's das mit der Einheitlichkeit.

Mit href="javascript:;" kann man notfalls auch mal vorhandenes click-Verhalten temporär entfernen, ohne daß der Link dann direkt zur Usability-Falle für den Nutzer wird. Mit href="#" springt der Browser zum Dokumentanfang, mit href="" lädt er die Seite neu. Der Nutzer verliert die Position auf der Seite und ist genervt. All das passiert bei href="javascript:;" nicht; auch dann nicht, wenn der Nutzer Javascript deaktiviert hat. Und darum geht es mir. Ich jedenfalls bin es leid, ständig die Lese-Position im Dokument wieder neu suchen zu müssen, weil irgend ein Dödel mich per href="#" an den Seitenanfang geschickt hat.

Sehe ich nur das Problem nicht? Wenn du beispielsweise nur :hover im IE6 haben willst, dann brauchst du doch das Standardverhalten des Links nicht und bist besser dran, es zu unterdrücken, also kann href ganz wegfallen. Ohne href ändert sich das Rendering, das Element sieht dann aus wie einfacher Text ohne Unterstreichung und ohne Cursor-Änderung. Wenn man was klickbares braucht, dann mit href (wenn man die Rendering-Eigenschaften braucht), onclick braucht man dann sowieso und da kann man doch das return false hinschreiben. Was dann in href drinsteht ist nur noch für ausgeschaltetes Javascript relevant.

Lo!