jquery-vgwort.js – Eventhandler für VG Wort-Zählpixel

()

Die VG Wort, eine Verwertungsgesellschaft für Autoren, erfaßt auch Online-Texte mit einem Zählpixel. Hat man genug Zugriffe aus Deutschland vorzuweisen, kann man an der jährlichen Ausschüttung partizipieren. In HTML-Dokumente kann man die Zählpixel einfach als Bild in den HTML-Quelltext einbauen. Bei PDF-Dokumenten geht das nicht. Es gibt dann zwei Möglichkeiten: entweder man verlinkt das Zählpixel und übergibt ihm den URL auf das PDF-Dokument mit einem Parameter, oder man heftet eine JavaScript-Funktion zum Abruf des Bildes mit einem Eventhandler an das a-Element. Beide Möglichkeiten beschreibt die VG Wort in ihrer Anleitung. Die JavaScript-Variante funktioniert natürlich nicht, wenn JavaScript ausgeschaltet oder blockiert ist. Die reine HTML-Variante verzögert den Aufruf durch die Weiterleitung und das Bild kann kurz aufscheinen – de facto ein leerer Tab. Das jQuery-Plugin jquery-vgwort.js ermöglicht es, durch den Aufruf der Methode

1 $( document ).ready( function(){ $('a').setVgwortPdfLink() } )

die HTML-Variante in die JavaScript-Variante zu konvertieren. Dadurch vereinigt es die Vorteile beider Varianten: es funktioniert auch ohne JavaScript, aber wenn es ausgeführt wird, bemerkt der Leser nichts. Die Funktion prüft alle href-Attribute, ob sie die Form eines solchen Links haben, z. B.

1 <a hreflang="de" href="http://vg06.met.vgwort.de/na/e9a304d884c24fa691657dae29300ffb?l=http://ingram-braun.net/public/chess/training/Trainerhausarbeit.pdf" type="application/pdf" media="print" target="_blank">C-Trainerarbeit</a>

und liest dann den Ziel-URL, ersetzt damit den Inhalt des href-Attributs und fügt einen Eventhandler an, mit dem das Bild beim anklicken des Links geladen wird. Das Plugin ist für verschiedene Szenarien gerüstet:

  • alte Marken mit 30 statt 32 Zeichen
  • verlagsspezifische Subdomains
  • großgeschriebene URLs
  • PDFs müssen keine erkennbare Dateierweiterung tragen

Außerdem ist der reguläre Ausdruck spezifisch genug, um nicht andere URLs zu treffen. Selbstverständlich kann man die in jQuery üblichen Verkettungen vornehmen. Das Plugin kann man von GitHub herunterladen, und es steht unter der GNU Public License.

Da das href-Attribut untersucht wird, könnte man die Funktion theoretisch auch auf link-Elemente anwenden, aber ich habe noch keine gesehen, die klickbar wären.

Wörter, ≈ Zeichen