[Frage] Mask-Elemente und JavaScript TYPO3-Version: 7.6.18

  • MichMit MichMit
    Jar Jar Binks
    0 x
    1 Beiträge
    0 Hilfreiche Beiträge
    20. 05. 2017, 09:01

    Hallo zusammen,

    wenn ich mit Mask z.B. einen Bild-Slider herstelle, kann ich die HTML-Ausgabe via Fluid-Template prima erzeugen. Soweit so gut. Unterstellen wir nun unserem Bild-Slider, dass er zum Funktionieren noch zusätzlich eine JS- und eine CSS-Datei benötigt.

    Meine Frage zielt auf die "zusätzlichen" Dateien ab, die, sobald das Content Element (der Slider) benutzt wird per Script- bzw. Link-Tag eingebunden werden sollen.

    Momentan lade ich immer ALLE JavaScript via TypoScript in meinem Haupttemplate. Klar, das funktioniert. Ich fände es aber schicker, wenn die Scripte/CSS-Files nur geladen werden, wenn diese auch tatsächlich benötigt werden (sprich das Content Element "Bild-Slider" auf der jeweiligen Seite benutzt wird).

    Eine weitere Möglichkeit wäre, die Files direkt im Fluid-Template zu "inkludieren". Das halte ich jedoch auch für wenig gelungen. Wird das Content Element mehrfach auf einer Seite benutzt, werden auch die Scripte/Css-Dateien mehrfach eingebunden.

    Gibt es da was schickeres? Bin für jeden Tipp dankbar.

    Gruß
    Michael


  • 1
  • Teisinger Teisinger
    Jedi-Meister
    0 x
    443 Beiträge
    31 Hilfreiche Beiträge
    20. 05. 2017, 21:06

    Mir fallen spontan 3 Möglichkeiten ein:
    Einen eigenen Viewhelper schreiben fürs includieren von CSS und JS.
    Oder Ajax <- prüfen ob eine gewisse class vorhanden ist und dann das entsprechende nachladen.
    Oder wie ich es auch mache: Das benötigte CSS und JS von vorneherein laden lassen - weil zumindest in meinen Projekten gibt es eigentlich so gut wie keine Seiten ohne Slider.
    Bei letzterem kannst du deine jeweilige Sliderconfiguration, die man für gewöhnlich im Backend vom Contentelement einstellen kann, entweder per Data-Attribute ins Html schreiben oder als json oder in einen Html Template-Tag (<template></template>).

    https://github.com/groundstack-org

  • 1