Eigenes Quicktag schreiben

  • Hi,
    Benutze nicht de WYSISWG Editor und habe mich mal mit den Quicktags beschäftigt. Einfache Sachen bekomme ich auch hin. Also beispielsweise den markierten Text unterstreichen, oder so.

    Jetzt wollte ich aber etwas komplexeres machen, steige durch den Code aber einfach nicht hindurch.

    Prinzipiell will ich einen Link erstellen lassen, nur eben dass ein Teil der URL schon eingesetzt sein soll. Beispielsweise klickt man auf den "Link-2" Button, gibt beim prompt dann "12345" ein, und dann wird ein Link in der Form <a href="http://www.seiteseite.de/12345"></a> erstellt. Also eigentlich nichts anderes, als genau das gleiche wie bei einem normalen Link, nur eben etwas erweitert.

    Nun habe ich mir quicktag.js angesehen, und bin verwirrt. Erstmal gibt es neben dem normalen Code noch zwei weitere Code-Abschnitte, die einen Link definieren, desweiteren steht nirgends wie ich so einen Code mit dem für einen normalen Button verbinde. Habe schon alles durchgesehen, steige da aber nicht durch. Kann mir da wer helfen? Vielleicht etwas erklären, was da für was steht?

    Vielen Dank schonma

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Habe buttonsnap getestet. So wie ich das sehe, bietet es aber auch nur die Möglichkeit einen Anfangs- und einen End-Tag zu definieren (jedenfalls ohne das ich mich jetzt weiter in Javascript vertiefe). Hätte aber gerne das gleiche wie dem dem "Link" Quicktag. Ein popup, bei dem ich das fehlende Element eingeben kann, das dann an der richtigen Stelle eingesetzt wird.
    Eigentlich ist das ja genau das Link Quicktag, nur in ein bisschen veränderter Form.

  • Habe buttonsnap getestet. So wie ich das sehe, bietet es aber auch nur die Möglichkeit einen Anfangs- und einen End-Tag zu definieren (jedenfalls ohne das ich mich jetzt weiter in Javascript vertiefe). Hätte aber gerne das gleiche wie dem dem "Link" Quicktag. Ein popup, bei dem ich das fehlende Element eingeben kann, das dann an der richtigen Stelle eingesetzt wird.
    Eigentlich ist das ja genau das Link Quicktag, nur in ein bisschen veränderter Form.

    Dann soltest du dich mit dem JavaScript noch mal beschäftigen. Für den myGallery Quicktag verwende ich auch buttonsnap - und damit rufe ich einen ganzen Bilderbrowser auf, der als Popup-Fenster erscheint...

  • Ja das ist mir schon klar dass das prinzipiell einfach geht. Nur sind meine Javascript Kenntnisse dafür eben doch zu rudimentär, insofern dachte ich, jemand könnte mir helfen durch das Script eines Links in der quicktag.js durchzusteigen.

  • Kurzform reicht. Würde auch reichen, wenn mir jemand aus der quicktag.js die nötigen Zeilen kopiert und postet, das ich sie einfach bei mir reinschreiben und verändern kann. Einfach das ich in etwas weiß, was da was ist. Habe in meiner Quicktag.js datei nun 4 abschnitte gefunden, die was mit dem "link" button zu tun haben. weiß aber nich was da was bewirkt.

  • Also die Kurzform.

    0.) quicktags.js Backup anlegen !

    1.) Zeile 52:
    Bestimmt Button.
    Kopieren und eigenen Quicktag zaubern.

    Code
    [FONT="Courier New"]edButtons[edButtons.length] = 
    new edButton('ed_link'  // zB. [COLOR="Red"]ed_mylink[/COLOR]
    ,'link'  // zb. [COLOR="Red"]MyLink[/COLOR]
    ,''
    ,'</a>'
    ,'a'
    ); // special case[/FONT]

    2.) Zeile 158:
    [FONT="Courier New"]function edShowButton(button, i)[/FONT]

    Eine weitere if/else Abfrage einfügen nach Zeile 164
    dabei die darüberliegende kopieren und so ändern:

    Code
    [FONT="Courier New"]else if (button.id == '[COLOR="Red"]ed_mylink[/COLOR]') {
     document.write('<input type="button" id="' + button.id + '" accesskey="' + button.access + '" class="ed_button" onclick="[COLOR="Red"]edInsertmyLink[/COLOR](edCanvas, ' + i + ');" value="' + button.display + '" />');
    }[/FONT]


    3.) Jetzt noch die passende Inputboxfunktion.
    Zeile 364:
    Kpl. Funktion kopieren und eigene erstellen.
    zB.

    Speichern. Prüfen ob Button vorhanden ist. Ende Gelände.

    "Whoever controls the media, controls the mind." J.Morrison

  • Tausend tausend Dank! Hab dank dir da endlich durchgepeilt, habs gemacht, und es geht ohne Probleme! Super! Danke für die ausführliche Hilfe! Geht alles!

  • Ich will den <center> Befehl einfügen und habe bereits

    PHP
    edButtons[edButtons.length] = 
    new edButton('ed_center'
    ,'zentriert'
    ,'<center>'
    ,'</center>'
    ,'x'
    );


    eingefügt.

    Ich habe jetzt keinen weiteren Verweis in der quicktags.js gefunden, denn ich anpassen oder ergänzen muss.

    Was nun ?

    PS
    Zudem frage ich mich eh, warum den <center> nicht standard im Editor ist.

    Danke & Gruss
    tboggi

    Meine Seite ist nicht valide und das ist auch gut so!


  • Zudem frage ich mich eh, warum den <center> nicht standard im Editor ist.


    Weil das oldschool-HTML ist von dem nicht nichmal erwarten würde, dass er XHTML-valide ist.

    "Eine gut gestellte Frage ist schon halb beantwortet."

  • Weil das oldschool-HTML ist von dem nicht nichmal erwarten würde, dass er XHTML-valide ist.



    aha, wie ist denn der XHTML-valide befehl und wo gibt's ne Referenz ?

    ABER, ändert ja nichts an der Tatsache, dass der Befehl "zentrieren" nicht enthalten ist !!

    tboggi

    Meine Seite ist nicht valide und das ist auch gut so!

    Einmal editiert, zuletzt von tboggi (20. Januar 2007 um 15:54)

  • HTML
    <div align="center">


    oder

    HTML
    <div align="center">


    wäre schon besser. Aber align ist auch so ein potentieller oldschool-Kandidat.
    Am besten wäre deshalb

    HTML
    <p style="text-align: center;">

    "Eine gut gestellte Frage ist schon halb beantwortet."

  • ja sehr gut :)

    zwar ausführlicher aber gefällt mir besser, da es ja den css codes nahe ist.

    Jetzt weißt du sicherlich noch, wie ich den Tag einbaue, oder ;-)

    Meine Seite ist nicht valide und das ist auch gut so!

  • ja sehr gut :)

    zwar ausführlicher aber gefällt mir besser, da es ja den css codes nahe ist.

    Jetzt weißt du sicherlich noch, wie ich den Tag einbaue, oder ;-)


    Ist ja hier eigentlich im Thread erklärt...funktioniert das nicht?

    "Eine gut gestellte Frage ist schon halb beantwortet."

  • align="center" ist genau so obsolet wie <center>. XHTML ist Struktur-Markup. Zwar erlaubt XHTML 1.0 Transitional die beiden noch als Übergangslösung. Aber generell sollte man bei einer XML-Orientierung die Style-Definitionen ausgliedern, eben in CSS. Deswegen: entweder style="align: center;" oder besser class="center" und .center im CSS definieren. Letzteres hat den Vorteil, dass das XHTML nicht mit CSS verhunzt ist. Dann muss man keine CSS-Fragmente aus dem Code popeln, wenn sich das Design ändert oder wenn man alternative Stylesheets definiert.

  • ÄÄh, so genau hab ich das jetzt nicht ausprobiert, WEIL

    sich Schritt 2 und 3 ja auf "links" bezieht und ich einen Verweis a la "Fett" oder "Kursiv" gesucht habe.
    Demnach bin ich davon ausgegangen, dass es Unterschiede zwischen den Formatierungen und den Links gibt.

    Meine Seite ist nicht valide und das ist auch gut so!

  • klappt, ich dachte das plugin wäre nur für den WYSIWYG Editor.

    nochmal zu jottlieb:

    gehe ich davon aus, das über <p style="..."> die befehle reinkommen, die ich auch in css eintrage ?

    Meine Seite ist nicht valide und das ist auch gut so!

  • klappt, ich dachte das plugin wäre nur für den WYSIWYG Editor.

    nochmal zu jottlieb:

    gehe ich davon aus, das über <p style="..."> die befehle reinkommen, die ich auch in css eintrage ?


    Ja was in style reinkommt sind normale CSS-Befehle. Du kannst diese natürlich auch zentral in der style.css festlegen und dann dem Absatz nur eine Klasse zuweisen.

    "Eine gut gestellte Frage ist schon halb beantwortet."

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!