marvin: Entweder href oder onClick!

Hallo,

ich arbeite gerade an einer Navigation:

<noscript><li><a href="/login">Login</a></li></noscript>
<script type="text/javascript">
  <!--
  document.write('<li><a href="#loginform" rel="facebox">Login</a></li>')
  //-->
</script>

das bewirkt, das Nutzer mit Javascript eine Art Login-Layer sehen (wird eingeblendet durch jquery Plugin Facebox) und nutzer ohne JS werden werden eben direkt weitergeleitet.

Es funktioniert auch, aber laut W3 Validator sinds gleich 2 Fehler auf einem Schlag:

  • <noscript> und <script..> haben nichts zwischen <ul> und <li> zu suchen.
  • <li> muss immer an erster Stelle sein.

Könnt ihr mir sagen, wie man onClick und href in einem Link zusammenfasst?
Ich will nicht wegen einen Menüpunkt die Navigation einer mal komplett für JS-Nutzer und einmal komplett für nicht JS-Nutzer ausgeben lassen.

Viele Grüße,
Marvin

  1. Hallo,

    Hallo,

    <noscript><li><a href="/login">Login</a></li></noscript>
    <script type="text/javascript">
      <!--
      document.write('<li><a href="#loginform" rel="facebox">Login</a></li>')
      //-->
    </script>

    Könnt ihr mir sagen, wie man onClick und href in einem Link zusammenfasst?

    Wie währe es mit:
    <a href="/login" onClick="doSometring(); return false;">Login</a>

    Viele Grüße,
    Marvin

    mfg Pryos

    1. Vielen lieben Dank euch beiden, funktioniert prima mit dem return false! :-)

  2. @@marvin:

    nuqneH

    Es funktioniert auch, aber laut W3 Validator sinds gleich 2 Fehler auf einem Schlag:

    • <noscript> und <script..> haben nichts zwischen <ul> und <li> zu suchen.

    Yep. 'ul' darf nur 'li'-Kinder haben. Du müsstest das 'noscript' ins 'li' hineinnehmen. Das brauchst du aber gar nicht, denn …

    Könnt ihr mir sagen, wie man onClick und href in einem Link zusammenfasst?

    <li><a href="/login" onclick="[code lang=javascript]window.location.hash = '#loginform'; return false;">Login</a></li>[/code]

    'return false;' sorgt dafür, dass der per @href angegebene Link bei aktiviertem JavaScript nicht angesprungen wird.

    Qapla'

    --
    Alle Menschen sind klug. Die einen vorher, die anderen nachher. (John Steinbeck)