Bookmarklet für das Self-Forum
Siechfred
- javascript
Hallo allerseits.
Das erste Bookmarklet ist fertig, ich stelle den Code mal hier rein:
javascript:if(!window.external){alert("Dieses Bookmarklet funktioniert nur im Internet Explorer.");}else{input=document.getElementsByTagName('textarea')[0];aTxt=input.value;sTtl=prompt('Bitte Linktitel eingeben:','');if(sTtl!=''){eTag='@title='+sTtl+']';}else{eTag=']';};aRng=document.selection.createRange().text;aPos=aTxt.indexOf(aRng);ePos=aTxt.indexOf(aRng)+aRng.length;nVal=aTxt.substring(0,aPos)+'[link:'+aRng+eTag+aTxt.substr(ePos);input.value=nVal;void 0;}
Mit diesem kleinen Code wird im Internet Explorer 6.0 (einen anderen habe ich zur Zeit nicht zur Verfügung) ein innerhalb der Antwort-Textarea markierter Text forumskonform als Link ausgeworfen. Ich bitte die IE-User, das mal zu testen und mir eventuelle Fehler mitzuteilen. Eine Gecko-Version folgt gegebenfalls auch noch, und wenn alles funktioniert, wie ich mir das vorstelle, kommt sicher in nächster Zeit eine nette kleine Sammlung an Bookmarklets für das Forum zusammen :)
Freundschaft!
Siechfred
Hallo Siechfred,
Das erste Bookmarklet ist fertig, ich stelle den Code mal hier rein:
da der Thread noch so einsam hier rumsteht, trau ich mich mal, den Beta-Tester zu spielen.
Mit diesem kleinen Code wird im Internet Explorer 6.0 (einen anderen habe ich zur Zeit nicht zur Verfügung) ein innerhalb der Antwort-Textarea markierter Text forumskonform als Link ausgeworfen.
was bei mir passiert:

der Link erscheint in Self-Stil: [ link:http://www.visuelya.de/@title=altbau ] mit der Ausgabe: altbau
und schließlich ist der gesamte Text des Postings markiert.
Was mir beim Schreiben dieses Textes aufgefallen ist:
kommt der Linktext noch einmal in der Textarea vor (so wie bei mir jetzt oben beim ersten Spiegelstrich und später bei dem Bildlink), so wird das erste Vorkommen des Strings, aber nicht der markierte String umgewandelt.
die Komplett-Textmarkierung passiert in diesem Falle nicht.
Gefällt mir gut! Aber jetzt muß ich mal weg von dem PC im Büro ;-)
Gruß aus Köln-Ehrenfeld,
Elya
Hallo,
/@title=
aha, mal wieder was gelernt, sollte ich jetzt nur noch behalten :-)
Chräcker
Hallo Elya.
was bei mir passiert:
Bis auf das Markieren kann ich alles nachvollziehen. Ich habe die IE-Version mal umgebaut:
javascript:if(!window.external){alert("Dieses Bookmarklet funktioniert nur im Internet Explorer.")}else{sTtl=prompt('Bitte Linktitel eingeben:','');if(sTtl!=''){eTag='@title='+sTtl+']';}else{eTag=']';}input=document.getElementsByTagName("textarea")[0];obj=document.selection.createRange();insText='[link:'+obj.text+eTag;document.selection.createRange().text=insText;input.focus();}void 0;
So sollte es gehen.
Freundschaft!
Siechfred
Hallo Siechfred,
Mit diesem kleinen Code wird im Internet Explorer 6.0 (einen anderen habe ich zur Zeit nicht zur Verfügung) ein innerhalb der Antwort-Textarea markierter Text forumskonform als Link ausgeworfen. Ich bitte die IE-User, das mal zu testen und mir eventuelle Fehler mitzuteilen. Eine Gecko-Version folgt gegebenfalls auch noch,
Guck mal hier bezüglich der Gecko-Version: < http://www.mylittlehomepage.net/de/textarea_demo.html>
Viele Grüße,
Christian
Hallo Christian.
Guck mal hier bezüglich der Gecko-Version: < http://www.mylittlehomepage.net/de/textarea_demo.html>
Ja, danke. Das Gecko-Bookmarklet sieht jetzt so aus:
javascript:input=document.getElementsByTagName("textarea")[0];if(window.external || window.opera){alert("Dieses Bookmarklet funktioniert nur in Gecko-Browsern.")}else if(input.selectionStart){sTtl=prompt('Bitte Linktitel eingeben:','');if(sTtl!='' && sTtl != null){eTag='@title='+sTtl+']';}else{eTag=']';}start=input.selectionStart;end=input.selectionEnd;insText='[link:'+input.value.substring(start,end)+eTag;input.value=input.value.substr(0,start)+insText+input.value.substr(end);}else{alert("Ihr Browser unterstützt dieses Bookmarklet leider nicht.")}void 0;
Freundschaft!
Siechfred
Hallo allerseits.
Kleine Ergänzung. Das Ganze soll als Bookmarklet ja kurz und knapp gehalten sein, weshalb auf jegliche Prüfungen, wieviel markiert ist usw. verzichtet wird. In den mir hier zur Verfügung stehenden Browsern (außer Opera) funktioniert es soweit. Wer mag, kann ja mal testen, wie es mit älteren IE und Geckos unter verschiedenen Betriebssystemen aussieht.
Freundschaft!
Siechfred
Hi Siechfred,
Kleine Ergänzung. Das Ganze soll als Bookmarklet ja kurz und knapp gehalten sein, weshalb auf jegliche Prüfungen, wieviel markiert ist usw. verzichtet wird. In den mir hier zur Verfügung stehenden Browsern (außer Opera) funktioniert es soweit. Wer mag, kann ja mal testen, wie es mit älteren IE und Geckos unter verschiedenen Betriebssystemen aussieht.
Mozilla/5.0 (X11; U; Linux i686; de-AT; rv:1.7) Gecko/20040626: geht.
Konqueror von KDE 3.2.2: geht nicht, der kann aber generell keine Bookmarklets (kennt kein javascript:-Pseudo-Protokoll).
Viele Grüße,
Christian
Hallo Christian.
Mozilla/5.0 (X11; U; Linux i686; de-AT; rv:1.7) Gecko/20040626: geht.
Fein, dann kann ich ja da weiter machen :)
Konqueror von KDE 3.2.2: geht nicht, der kann aber generell keine Bookmarklets (kennt kein javascript:-Pseudo-Protokoll).
Gut, wer den Konqueror nutzt, wird das wissen, und damit wohl nicht auf die Idee kommen, so etwas nutzen zu wollen.
Freundschaft!
Siechfred
Hallo Siechfred,
Danke!
Wer mag, kann ja mal testen, wie es mit älteren IE und Geckos unter verschiedenen Betriebssystemen aussieht.
Unter "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040626 Firefox/0.8" wunderbar.
Freundliche Grüsse,
Vinzenz