Contao-Camp 2024
Ergebnis 1 bis 5 von 5

Thema: lazy-images und Isotope

  1. #1
    Contao-Fan Avatar von tobihessen
    Registriert seit
    01.04.2010.
    Beiträge
    311
    Partner-ID
    8827

    Frage lazy-images und Isotope

    Hallo Gemeinde,
    ich bin auf der Suche nach einer Lösung, wie ich Produktbilder aus Isotope nachladen kann.
    Wir haben für einen Kunden einen größeren Shop erstellt und die möchten unbedingt ALLE Produkte auf der Startseite anzeigen lassen. Ladezeit = 4-5 Sekunden. Ich sage da mal nichts weiter so, Kunde ist König.
    Ich habe schon öfter lazy-images für andere Projekte genutzt, aber nicht für Isotope.

    Für normale Bilder funktioniert es im Shop, nicht aber für Isotope-Produktbilder.
    Ich habe das iso_gallery_inline.html5 mal angepasst:

    PHP-Code:
    <figure class="image_container"><img id="g<?php echo $this->name?>" class=" lazyloaded" src="<?php echo $this->src?>" data-src="<?php echo $this->src?>" itemprop="image" alt="<?php echo $this->alt?>"></figure>
    Hab dort die class und die data-src mit eingebracht. Aber das scheint nicht zu reichen.
    Hat jemand eine Idee?
    Geändert von tobihessen (17.01.2018 um 23:13 Uhr)

  2. #2
    Contao-Urgestein Avatar von Toflar
    Registriert seit
    15.06.2009.
    Beiträge
    4.467
    Partner-ID
    8667
    User beschenken
    Wunschliste

    Standard

    Wenn du
    Code:
    src="<?php echo $this->src; ?>"
    setzt, wird das Bild ja schon geladen? Das müsstest du einfach weglassen und nur
    Code:
    data-src
    setzen bzw. in
    Code:
    src
    halt ein low-quality Bild angeben oder einen Platzhalter oder sowas wie
    Code:
    src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="
    .
    Contao Core-Entwickler @terminal42 gmbh
    Wir sind Contao Premium-Partner!
    Für Individuallösungen kannst du uns gerne kontaktieren.
    PS: Heute schon getrakked?

  3. #3
    Contao-Fan Avatar von tobihessen
    Registriert seit
    01.04.2010.
    Beiträge
    311
    Partner-ID
    8827

    Standard

    Klingt für mich absolut logisch, funktioniert aber trotzdem nicht.
    Die Platzhalter bleiben "leer".
    Muss ich dafür noch irgendwas aktivieren?

  4. #4
    Contao-Urgestein Avatar von Toflar
    Registriert seit
    15.06.2009.
    Beiträge
    4.467
    Partner-ID
    8667
    User beschenken
    Wunschliste

    Standard

    Das initiierende Script vielleicht?
    Contao Core-Entwickler @terminal42 gmbh
    Wir sind Contao Premium-Partner!
    Für Individuallösungen kannst du uns gerne kontaktieren.
    PS: Heute schon getrakked?

  5. #5
    Contao-Nutzer Avatar von Nook
    Registriert seit
    09.09.2010.
    Ort
    Regensburg
    Beiträge
    122
    Partner-ID
    9262

    Standard

    Hallo,

    mit dem Script oben kann lazysizes nicht funktionieren.
    Alleine schon weil die Attribute data-srcset und sizes fehlen.
    Das Attribut src sollte nicht das Bild sondern den placeholder enthalten wie zB das transparente pixel: src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAE AAAICTAEAOw=="
    Oder komplett fehlen, was aber dann invalides HTML wäre.


    Und weil die Klasse falsch ist.
    class="lazyload" wäre richtig.

    Schau dir hierzu am besten mal die Doku an von LazySizes:
    https://github.com/aFarkas/lazysizes


    Zusätzlich zum JS LazySizes generiert das Contao Plugin "contao-lazy-images" thumbnails (transparent oder mit vorschau) in korrektem Seitenverhältnis.
    Wenn du selber ein Template baust, bekommst du zwar das Lazyloading per JS LazySizes zum laufen, aber auf die Thumbnails des Contao Plugins musst du dann verzichten.
    Geändert von Nook (23.01.2018 um 12:16 Uhr)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •