Zeilenumbruch in der Contao-Bildunterschrift via JavaScript erzeugen
von Oliver Richter (Kommentare: 0)
Contao erlaubt in Version 3 bei der Angabe der Standard-Bildunterschrift leider nur die Eingabe von Text über ein einzeiliges Eingabefeld (<input type="text" />
). Dort ist die Eingabe z.B. eines Zeilenumbruchs (leider) nicht vorgesehen.
Für den Fall, dass eine saubere Lösung (via Backend) nicht möglich und weiterhin auf das <figcaption>
-Element für den Text mit Zeilenumbruch im Frontend zurück gegriffen werden muss, hier eine "quick'n dirty"-Variante, die ich auch, trotz geäußerter Bedenken, bei einem meiner Kunden anwenden musste.
jQuery(document).ready(function () {
// create line break: replace '--'
$('figure.image_container figcaption.caption').each( function(index) {
if ( $(this).text().length > 0 ) {
$(this).html( $(this).text().replace(/--/g,'<br />') );
}
});
});
Immerhin wird der Zeilenumbruch zuverlässig bei allen sehenden JavaScript-Nutzern erzeugt. Wie Screenreader damit umgehen, habe ich nicht getestet. Grundsätzlich empfehle ich jedoch, die bestehenden Funktionalitäten von Contao in ihrer Form zu nutzen und z.B. Text mit Absätzen in den dafür vorgesehenen Elementen z.B. unterhalb des Bildes zu platzieren.
Zum Einbinden des Code-Fragments stellen Sie bitte zuvor sicher, dass Sie die JQuery-Bibliothek eingebunden haben. Fügen Sie das Code-Fragment dann beispielsweise am Ende Ihres Inhaltes hinzu innerhalb eines <script>
-Tags.
Sie befinden Sich in der Detailansicht eines Blog-Eintrags.
Um alle Blog-Einträge zu sehen, wechseln Sie bitte zur Nachrichten-Übersicht.
Einen Kommentar schreiben