frischerFisch: link ohne action nur onclick

hi ,

Kann man einen link erstellen, der beim draufclicken gar nichts macht, ausser ein onclick aufzurufen, also kein neues fenster aufmachen etc.

Ich koennte natuerlich dafuer auch einen button nehmen, aber ich brauche genau das aussehen eines links.

danke
frischerFisch

  1. Hi,

    Kann man einen link erstellen, der beim draufclicken gar nichts macht, ausser ein onclick aufzurufen, also kein neues fenster aufmachen etc.

    sicher ein link ist ja ein <a></a> damit kannst du auch auf einer seite auf sogenante Anker verlinken also warum nicht einfach auf eine JS function.

    Ich koennte natuerlich dafuer auch einen button nehmen, aber ich brauche genau das aussehen eines links.

    einem button kann man den style schon so einrichten das es ziemlich nahe an den style eines links herankommt.

    MfG

    1. Moin...

      also entweder du machst ein
      [code language=html]
      <a href="#" onClick="alert('hallo')">hallo</a>
      [/code]

      oder du versuchst mal mit CSS ein <span> so zu formatieren, daß er wie ein Link aussieht. und den denn mit onClick versehen...

      Nils

      1. Hallo Nils,

        also entweder du machst ein

          
        
        > <a href="#" onClick="[code lang=javascript]alert('hallo')
        
        ~~~">hallo</a>  
        [/code]  
          
        Also dann schon besser so:  
          
        ~~~html
          
        <a href="#" onClick="[code lang=javascript]alert('hallo');return false
        ~~~">hallo</a>  
        [/code]  
          
        (damit die Seite beim Klick auf den Link nicht zum Seitenanfang springt)  
          
        oder so:  
          
        ~~~html
          
        <a href="javascript:[code lang=javascript]void(0)
        ~~~" onClick="`alert('hallo')`{:.language-javascript}">hallo</a>  
        [/code]  
        Bei letzterer Variante kommt da bei deaktivierten JS wohl die Meldung "Die Seite kann nicht angezeigt werden", außerdem erscheint der Schmarrn in der Statuszeile.  
          
        Gruß Gernot
        
        1. Hi Gernot und die anderen,

          Also ich kann nur sagen,  die Variante von Gernot war die einzige die funktioniert hat, trotzdem danke.

          <a href="#" onClick="bla('AAAA');return false">hallo</a>

  2. Hallo,

    suchst du evtl: <a href="javascript:;">Link</a> ?

    Gruß Frank

    1. Hi,

      Sorry Leute, ich schaffs einfach nicht.

      hab jetzt das
      <a href="javascript:onclick=filter('A', 'B');">A und B</a>

      was mir einen syntax error bringt
      und mir trotzdem noch ein weiteres fenster auf macht

      <a href="#" onclick="filter()">A und B</a>
      das ruft zumindest schon mal meine funktion auf, aber werte kann ich nicht uebergeben
      und es wird auch hier wieder ein neues Fenster auf gemacht

      Gruss
      Fisch

      1. Hey, Du Fisch!

        <a href="javascript:onclick=filter('A', 'B');">A und B</a>

        DAS ist ganz großer Mist!! _Entweder_ Du "verlinkst" einen Funktionsaufruf per
          <a href="javascript: my_funktion(param1, param2, ..., param n)">bla</a>

        _oder_ Du gibst einem Link ein onclick-Attribut
          <a href="linkziel" onclick="meine_funktion(param1, param2, ..., param n)">bla</a>

        Das da oben ist einem böse Mischung aus beidem.

        und mir trotzdem noch ein weiteres fenster auf macht

        Wenn Deine Funktion am Ende ein "return false;" hat, dann kommt kein neues Fenster (es sei denn, Du hast ein "target"-Attribut gesetzt).

        aber werte kann ich nicht uebergeben

        Doch. s.o.

        Liebe Grüße aus Ellwangen,

        Felix Riesterer.

        1. Hi,

          Also ich versteh nicht was ich falsch mache.
          ich bekomme immer die fehlermeldung

          bla is not defined

          <script type="text/javascript">
            <!--

          function bla(a)
              {
              alert(a);
              return false;
              }

          // -->
            </script>

          <a href="javascript: bla('AAAA');">foo bar</a>

          Gruss
          Fisch

          1. hi,

            Also ich versteh nicht was ich falsch mache.

            du berücksichtigst du hier gegebenen guten hinweise, dass du bitte bspw. so einen unfug

            <a href="javascript:

            nicht benutzen sollst, nicht.

            gruß,
            wahsaga

            --
            /voodoo.css:
            #GeorgeWBush { position:absolute; bottom:-6ft; }
  3. hi,

    Kann man einen link erstellen, der beim draufclicken gar nichts macht, ausser ein onclick aufzurufen, also kein neues fenster aufmachen etc.

    wenn du keinen link machen möchtest, dann verwende bitte keinen link.
    (und vor allem vergiss den erwähnten unfug mit dem href="javascript:..." ganz schnell wieder.)

    onClick kannst du auf so gut wie jedem anderen element ebenfalls verwenden - also mache das auch so. z.b. auf einem span, oder einem anderen element, welches sich ggf. eher anbietet.

    und wenn ohne javascript überhaupt keine funktionalität an dieser stelle bereitgestellt wird, könntest du dieses element auch noch per javascript ins dokument schreiben oder über's DOM erzeugen - weil es für einen user ohne JS es schließlich wertlos ist, braucht der es ggf. auch gar nicht erst zu sehen.

    Ich koennte natuerlich dafuer auch einen button nehmen, aber ich brauche genau das aussehen eines links.

    dann formatiere dieses nicht-linkelement entsprechend - :hover, :active, :focus etc. sind auch auf andere elemente anwendbar.
    im IE natürlich nicht - aber da kannst du dann ja auch mit JS nachhelfen, um per onmouseover/-out die formatierung entsprechend zu ändern.

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    1. hi ,

      wenn du keinen link machen möchtest, dann verwende bitte keinen link.
      (und vor allem vergiss den erwähnten unfug mit dem href="javascript:..." ganz schnell wieder.)

      Das schien mir der einfachste Weg zu sein, leider musste ich aber feststellen,dass der Weg zumindest fuer mich doch nicht so einfach war.

      Aber dennoch versteh ich nicht ganz warum man dann diesen vermeintlich einfacheren Weg nicht gehen sollte?

      Sicher hast schon irgendwie recht, aber ich seh jetzt auch keinen an diesem onclick-link.

      Gruss
      Fisch