Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 5 Gast/Gäste
[NG] BBCode überschreibt Text
#1
Wenn man einen Text per BBCode formatieren will und ihn markiert und dann auf einen Button klickt, wird der Text von der Eingabe nicht übernommen bzw. dann überschrieben.

Der Fehler tritt im 'normalen Modus' bei allen Codes auf (Select nicht getestet, nur Buttons) und im 'erweiterten Modus' bei allen außer B, I, U und den 4 aligns.

Ist leider ein Bug bei den meisten Forensoftware und wäre schön, wenn myBB die erste wäre, bei der alles hinhaut Wink
MFG DDSD

Admin @ DDSD.de
Admin @ Republik Dosmanien
Admin @ myCommandBoard.at.tt
#2
Habe auch schon einen Lösung für das Problem gefunden ^^
Jedenfalls einmal für den Firefox und nur für den URL-Code. Keine Sorge, funktioniert trotzdem mit dem IE, halt wie gewohnt.

Code:
function insertHyperlink() {
    var url = prompt("Please enter the URL of the website.", "http://");
    if(url) {
        // New/edited Code Start - only for Mozilla //
        var messageBox = document.input.message;
        if(is_mozilla && messageBox.selectionEnd) {
            var select_start = messageBox.selectionStart;
            var select_end = messageBox.selectionEnd;
            if(select_end <= 2) {
                select_end = messageBox.textLength;
            }
            var start = (messageBox.value).substring(0, select_start);
            var middle = (messageBox.value).substring(select_start, select_end);
            var end = (messageBox.value).substring(select_end, messageBox.textLength);
            if((messageBox.selectionEnd - messageBox.selectionStart > 0)) {
                middle = middle;
            }
            messageBox.value = start+middle+end;
        }
        if(middle == "" || normalmode == true) {
            var urltitle = prompt("If you wish to, you may also insert a title to be shown instead of the URL.", middle);
        } else {
            var urltitle = middle;
        }
        // New/edited Code Start - only for Mozilla //
        if(urltitle) {
            doInsert("[url="+url+"]"+urltitle+"[/url]", "", false);
        } else {
            doInsert("[url]"+url+"[/url]", "", false);
        }
    } else {
        alert("Error!\n\nYou did not enter a URL for the website. Please try again.");
    }
}

Für den Internet Explorer bekomme ich den Code leider nicht zusammen, wäre schön, wenn jemand noch ein else if einfügen könnte.
MFG DDSD

Admin @ DDSD.de
Admin @ Republik Dosmanien
Admin @ myCommandBoard.at.tt
#3
Der komplette Javascript-Code wurde für MyBB 1.2 neu geschrieben. Damit sollten die Probleme behoben werden.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
#4
Gut. Nur wer weiß, wann die neue Version kommt. Wäre schön wenn dem bald so wäre Wink
MFG DDSD

Admin @ DDSD.de
Admin @ Republik Dosmanien
Admin @ myCommandBoard.at.tt