Javascript ist Toll!

30. März 2009 - 13:45

BB Code Buttons

Ich hatte in der Vergangenheit ja schon einmal ein Skript vorgestellt, mit dessen Hilfe es möglich ist BB-Code in eine Textarea einzufügen. Um es einsetzen zu können, werden entsprechende Buttons benötigt, die z.b. oberhalb einer Textarea angezeigt werden und mit denen dann der Text entsprechend formatiert wird. Dazu habe ich das Skript erweitert und verbessert, so dass sich automatisch und leicht konfigurierbar, über eine Textarea, JS Buttons einfügen lassen.

Ich nutze den Code als Basis für Greasemonkey-Skripte, für einige Foren, die keine entsprechenden Buttons anbieten (z.b. das Forum auf Perlunity)

Das Skript ist relativ kompakt (knapp über 100 Zeilen mit Kommentaren) und funktioniert bei meinen Tests unter Windows XP, in allen gängigen Browser.

[... weiterlesen]
Kategorie: Javascript, Skripte / Comments (6) / 6831 mal gelesen
11. Oktober 2005 - 10:03

Text in Textarea einfügen

Dieser Text ist etwas veraltet, zeigt aber das Grundprinzip, wie ein Text in eine Textarea eingefügt werden kann. Für BB-Code, habe ich mittlerweile eine andere Funktion geschrieben, diese findet ihr hier.

Text an der Cursorposition einfügen können nur der IE ab Version 5 und Mozilla Browser. Opera bleibt aussen vor. Wie es bei Mac und Linux Browsern aussieht, weiß ich nicht.

Mit dem Skript, können z.b. BBCode Tags eingefügt werden oder Smilies. Das Skript sieht so aus:

function insert(input, aTag, eTag) {
    input.focus();
    if(!aTag) return;
    if(!eTag) eTag = '';
 
    if(typeof document.selection != 'undefined')     {
         var range = document.selection.createRange();
         var insText = range.text;
         if(!insText && eTag) return alert('Nichts markiert!');
         range.text = aTag + insText + eTag;
         range = document.selection.createRange();
         if (insText.length == 0)  range.move('character', -eTag.length);
         else  range.moveStart('character', aTag.length + insText.length + eTag.length);
         range.select();
    } else if(typeof input.selectionStart != 'undefined') {
         var start = input.selectionStart;
         var end = input.selectionEnd;
         var insText = input.value.substring(start, end);
         if(!insText && eTag) return alert('Nichts markiert!');
         input.value = input.value.substr(0, start) + aTag + insText + eTag + input.value.substr(end);
         var pos;
         if (insText.length == 0)  pos = start + aTag.length;
         else pos = start + aTag.length + insText.length + eTag.length;
         input.selectionStart = pos;
         input.selectionEnd = pos;
    } else {
         alert('Du kannst nach Hause gehen!nnLeider unterstützt dein Browser nicht die notwendige Funktion!');
    }
}

Das Skript ist eine leicht abgewandelte Form von dem Beispiel bei selfhtml

Beispiel


Kategorie: FAQ, Javascript / Comments (12) / 9402 mal gelesen
Powered by WordPress Stop Spam Harvesters, Join Project Honey Pot
marketing-bankruptcy
marketing-bankruptcy
marketing-bankruptcy
marketing-bankruptcy