Bookmarklet

Ein Bookmarklet (auch: Favelet) ist ein kleines Anwendungsprogramm geschrieben in JavaScript, das als Bookmark abgespeichert wird und auch so im Browser Verwendung findet. Ein Bookmarklet beginnt daher immer mit der Zeichenfolge "javascript:", damit der Browser den Code auch ausführt.

Im Normalfalle wird in eine Webseite eingebettetes Javascript beim Aufruf der Webseite oder bei bestimmten Aktionen, wie dem Absenden eines Formulars o.ä., ausgeführt. Art und Zeitpunkt der Ausführung bestimmt dabei der Ersteller der Webseite. Dagegen wird im Falle von Bookmarklets der lokal vorliegende Javascript-Code auf die jeweils betrachtete Webseite angewendet, indem das Bookmarklet während des Betrachtens der Webseite aufgerufen wird.

Mögliche Anwendungen sind z.B. das Auslesen der Markierung und die Übergabe des markierten Textes an andere Webseiten, Berechnungen, Worttransformationen, URL-Manipulationen, Whois-Abfragen usw.

Die Unterstützung in den verschiedenen Browsern hängt vom jeweiligen Support von "javascript:"-URLs in den Bookmarks ab. Darüber hinaus spielt natürlich die Unterstützung der jeweiligen Teile des Javascript-Codes eine Rolle.

siehe auch: Keyboardlet

Inhaltsverzeichnis

Beispiel 1: Wikipedia-Suche

Das folgende Bookmarklet durchsucht beispielsweise die deutschsprachige Ausgabe der Wikipedia nach dem zuvor im Browser markierten Text:

javascript:Qr=document.getSelection();if(!Qr){void(Qr=prompt('Suchbegriff:',''))};if(Qr)location.href='http://de.wikipedia.org/w/wiki.phtml?search='+escape(Qr)

(Getestet mit: Opera 7.5 und Mozilla 1.6, 1.8a3) Mit Mozilla unter Fedora Core werden Umlaute nur dann richtig übertragen, wenn man encode( durch encodeURIComponent( ersetzt. Vielleicht kann mal jmd. herausfinden, wieso. Evtl. ein Problem wegen UTF-8 und ISO-8859-1.

Da der Internet Explorer die Methode getSelection() nicht unterstützt, muss das Beispiel für den IE so aussehen:

javascript:Qr=document.selection.createRange().text;if(!Qr){void(Qr=prompt('Suchbegriff:',''))};if(Qr)location.href='http://de.wikipedia.org/w/wiki.phtml?search='+escape(Qr);

Eine Version, die auch in Safari (Apple) funktioniert:

javascript:x=escape(getSelection());if(!x)%7Bvoid(x=prompt('Wort?',''))%7D;window.location='http://de.wikipedia.org/w/wiki.phtml?search='+x

Ist nichts markiert, so erscheint ein Dialog-Fenster, das zur Eingabe des Suchbegriffs auffordert.

Installieren: (für Netscape, Firefox, Mozilla)

  1. Ein neues Lesezeichen im Lesezeichen-Manager anlegen.
  2. Einen Namem für das neue Lesezeichen wählen.
  3. In das Adressfeld den javascript-code kopieren.

Benutzen: (für Netscape, Firefox, Mozilla)

  1. Auf einer beliebigen Internetseite ein Wort markieren
  2. Lesezeichen, welches den javascript-code enthält, aufrufen
  3. Wikipedia zeigt Erklärung des markierten Wortes an.


Alternative Anleitung Den Code in dem Linkfeld eines Bookmarks oder Favoriten (IE) abspeichern, und dann anklicken. Zur leichteren Benutzbarkeit auf die Adressleiste des Browsers ablegen.

Weitere Beispiele

Erzeugt eine neue Seite, auf der alle Links der angezeigten Internetseite aufgezählt werden (Quelle: Weblinks 3).

javascript:WN7z=open('','Z6','width=400,height=200,scrollbars,resizable,menubar');DL5e=document.links;with(WN7z.document){write('<base target=_blank>');for(lKi=0;lKi<DL5e.length;lKi++){write(DL5e[lKi].toString().link(DL5e[lKi])+'<br><br>')};void(close())}

Bietet die Inverssuche von Telefonnummern an:

javascript:Qr=document.getSelection();if(!Qr){void(Qr=prompt('Telefonnummer',''))};if(Qr)location.href='http://www.dasoertliche.de/DB4Web/es/oetb2suche/home.htm?main=Antwort&AKTION=START_INVERS_SUCHE&SEITE=INVERSSUCHE_V&Suchen.x=1&Suchen.y=1&s=2&rg=1&taoid=&SKN=0&SEITE=INVERSSUCHE_V&AKTION=START_SUCHE&kw_invers='+escape(Qr)

Weblinks

Weiterführende Informationen:

Sammlungen von Bookmarklets:

See also: Bookmarklet, Anwendungsprogramm, Bookmark, Browser, Code, Dialog, Fenster, Formular, Inverssuche, JavaScript