Anja: Link -> Ereignis

Hallo,

habe mir ein kleines Tracking JS für Klicks auf ausgehende Links gebastelt.
Dieses fügt automatisch jedem Link das onclick-Ereignis zu: javascript:meineFunktion(this)...
Doch nun muss ich feststellen, dass onclick nur eintritt, wenn man mit der linken Maustaste auf den Link klickt.
Die mittlere Taste und das Öffnen in einem neuen Fenster zählen nicht dazu. Wie können auch diese Events angesprochen werden?

Danke

  1. Hi,

    habe mir ein kleines Tracking JS für Klicks auf ausgehende Links gebastelt.
    Dieses fügt automatisch jedem Link das onclick-Ereignis zu: javascript:meineFunktion(this)...
    Doch nun muss ich feststellen, dass onclick nur eintritt, wenn man mit der linken Maustaste auf den Link klickt.
    Die mittlere Taste und das Öffnen in einem neuen Fenster zählen nicht dazu. Wie können auch diese Events angesprochen werden?

    Sowas clientseitig zu erledigen ist nie 100% sicher. Es gibt ja auch User, die JS ganz deaktiviert haben.

    Am besten du erledigst das serverseitig, falls du Perl, PHP oder eine andere Sprache zur verfügung hast.

    Baue die Links dann so um, dass sie nicht mehr direkt auf die neue Seite verweisen, sondern dass nur die Zielseite im Link per GET mitgegeben wird.
    Beispiel:
    <a href="linkCounter.php?URL=http://www.google.de">google</a>
    (Welche Sonderzeichen du in der URL kodieren musst weiss ich jetzt nicht genau)
    Alternativ kannst du auch nur eine Nummer übergeben, zu der dann im Script die entsprechende URL gesucht wird.
    in dem Script (hier linkCounter.php) zählst du dann für die entsprechende URL eins hoch und leitest anschliesend auf diese weiter.

    mfG,
    steckl

    1. Hallo,

      es muss nicht 100%ig stimmen. Ob die Anti-JS oder lynx User jemals auf der Zielseite ankommen, ist eh fraglich. Mich interessieren nur die mit aktiviertem Javascript.
      Demnach bleibt weiterhin die Frage offen, welche(s) Event(s) empfehlenswert sind damit zumindest alle unterschiedlichen Klicks erfasst werden.

      Danke

      1. Der IE kennt onContextMenu, aber ich fürchte damit wirst du nicht glücklich. Ein Tipp wäre tatsächlich, auf eine andere Seite umzuleiten (Also auf eine von mir aus ausgang.php?link=www.example.org wo dann automatisch auf example.org weitergeleitet wird) und dort zu zählen. Das lässt sich am einfachsten und mit dem kleinsten Aufwand bewerkstelligen.

  2. habe mir ein kleines Tracking JS für Klicks auf ausgehende Links gebastelt.
    Dieses fügt automatisch jedem Link das onclick-Ereignis zu: javascript:meineFunktion(this)...

    Das sieht mir nicht besonders sinnvoll aus, um allen Links eine Eventfunktion zu zufügen würde ich sowas machen:

    window.onload = function() {  
    for(var i = 0; i < document.links.length; i++) {  
    document.links[i].onmousedown = function(e) {alert(e.type);}  
    }  
    }
    

    Die mittlere Taste und das Öffnen in einem neuen Fenster zählen nicht dazu. Wie können auch diese Events angesprochen werden?

    siehe Code.

    Struppi.