molily: JavaScript-Buttons für BBCode

Beitrag lesen

Hallo,

die angekündigten BBCode-Buttons im Posting-Formular sind nun für alle sichtbar.

Zur Vorgeschichte:
</archiv/2008/2/t166893/>
</archiv/2008/3/t167927/>

Dann möchte ich auf ein verbessertes Forums-Script von mir hinweisen, dass man als registrierter Benutzer in den Einstellungen zuschalten kann.

Das alte Script:
http://molily.de/temp/forum.js (komprimiert zum Einbinden)

Das neue Script:
http://molily.de/temp/forum2.js (komprimiert zum Einbinden)

Ich wollte schon immer eine Art Grundlage für weitere Scripte schaffen. Jetzt habe ich mal eine kleine Infrastruktur geschaffen, die ich weiter ausbauen will. Anstatt das ganze mit jQuery o.ä. zu lösen, habe ich keine Eingeständnisse gemacht und das ganze Low-Level gelöst (prototypische Erweiterung von DOM-Interfaces, DOMContentLoaded, DOM XPath, DOM Events mit Capturing). Das funktioniert hervorragend in den neuesten Versionen von Opera, Firefox und Safari. Für den IE reiße ich mir kein Bein aus.

Momentan kann das Script rudimentär die Forumshauptseite beim Klick auf einen Themenbereich bzw. einen Autornamen nach selbigen filtern und, wie schon das bisherige Scripte, ungelesene Antworten auf eigene Postings auflisten. Dazu sind noch die CSS-Regeln am Ende dieser Datei notwendig: http://molily.de/temp/forum.css

Falls ihr noch weitere Ideen habt, würde ich mich freuen. Der Namensraum SELFHTML.Forum soll erweiterbar für beliebige Funktionen sein und denen einige Daten und Helferfunktionen zur Verfügung stellen.

Schön wäre wenn z.B. Funktionen aus http://zapp.i-networx.de/ migriert und an aktuelle Programmiertechniken und Browserfähigkeiten angepasst werden. Erweiterungsscripte können meinetwegen jQuery verwenden, denn das wird hier derzeit ohnehin eingebunden. Allerdings habe ich bisher keine Notwendigkeit gesehen, wollte den möglichen Overhead von jQuery-Selektoren vermeiden und direkt mit XPath arbeiten.

Ich hatte lange die Möglichkeit verworfen, die Postings noch einmal in eine JavaScript-Struktur zu »parsen« bzw. JavaScript-Indizes zu erstellen, wie es Zapps Script tut, um die ganzen Features zur Verfügung zu stellen. Mit XPath lassen sich Elemente semantisch auf Basis von Tag-Namen, Klassen usw. ansprechen. Das gefällt mir besser als Orgien mit .parentNode.nextSibling.nextSibling.nextSibling.nextSibling und so weiter. Daher werde ich das noch einmal prüfen, sodass Module z.B. chronologische Übersichten sowie Themenbereich- und Namens-Statistiken und -Auflistungen anzeigen können, ohne selbst den DOM-Baum analysieren zu müssen.

Mathias