Ergebnis 1 bis 9 von 9

Thema: Im Kalender Frontend mit mouseover den Teasertext anzeigen

  1. #1
    Contao-Nutzer
    Registriert seit
    07.10.2010.
    Beiträge
    3

    Standard Im Kalender Frontend mit mouseover den Teasertext anzeigen

    Hallo allerseits,

    wir möchten gerne im Kalender, wenn man mit der Maus über den Kalendereintrag geht mehr zum Inhalt des Event ausgeben.
    Der Teasertext würde zum Beispiel ausreichen.

    Ist das mit Contao Bordmittel möglich?

    Für Hilfe wäre ich sehr dankbar.

    Viele Grüße
    Mathi
    Geändert von mathi66 (13.06.2017 um 12:04 Uhr)

  2. #2
    Contao-Urgestein Avatar von folkfreund
    Registriert seit
    09.04.2010.
    Beiträge
    1.928

    Standard

    Hallo Mathi,

    willkommen im Forum!
    Zitat Zitat von mathi66 Beitrag anzeigen
    Ist das mit Contao Bordmittel möglich?
    Ja und nein...
    Das ist 'mit Bordmitteln' im Sinne 'Häkchen im Backend setzen' nicht möglich. Aber du kannst dir das Ausgabetemplate anpassen und den benötigten HTML-Code beeinflussen. Ohne Nachladen per Ajax würde das aber bedeuten, dass je nach Füllstand deines Kalenders und nach Länge der Teaser u. U. recht viel geladen werden muss.
    Im Prinzip würdest du also im Template für jedes Event auch ein div mit dem Teaser erzeugen und dem eine Klasse zuweisen (z.B. eventteaser). Per CSS stellst du ein, dass alle .eventteaser unsichtbar sind ( display:none ) Ebenfalls per CSS kannst du festlegen, dass bei hover über einem Event das jeweilige darin enthaltene div.eventteaser auf display:block; gestellt wird.
    .event > .eventteaser {
    display:block;
    }
    Dann bleibt dir noch die Aufgabe, diesen Block ansprechend per CSS zu gestalten und zu positionieren.

    Viel Erfolg!

    Edit: ich habe bei folkfreun.de eine ähnliche Anforderung umgesetzt, allerdings mit nur viel weniger Information als dem Teaser, dafür die Eventanzeige in einer Lightbox. Der Besucher verlässt also die Kalenderseite nicht. Kannst ja mal schauen :-)
    Geändert von folkfreund (13.06.2017 um 12:31 Uhr)

  3. #3
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Mit Boardmitteln nicht, das wäre zu spezifisch.

    Du kannst dein Template cal_default leicht anpassen.
    PHP-Code:
    ...
                  <a href="<?= $event['href'?>" ... ><?= $event['link'?></a>
                  <div class="teaser invisible"><?= $event['teaser'?></div>
    ...
    Den Selektor ".invisible" solltest du in deinem CSS zur Verfügung haben.
    https://github.com/contao/core/blob/...essed.css#L105
    Diese Regel versteckt Elemente, lässt sie aber für Screenreader sichtbar.

    Das Ganze kannst du dann mit CSS gestalten, z.B. so.
    PHP-Code:
    /* CSS */

    .mod_calendar {
      
    overflowvisible;
    }
    .
    mod_calendar .event {
      
    background-colorred;
      
    positionrelative;
    }
    .
    mod_calendar .teaser {
      
    background-colorgreen;
      
    border-radius10px;
      
    box-shadow2px 2px 4px 0 rgba(000.5);
      
    opacity0;
      
    transitionopacity .3s ease 0s;
    }
    .
    mod_calendar .event a:hover + .teaser {
      
    widthauto;
      
    min-width200px;
      
    heightauto;
      
    margin0;
      
    clipauto;
      
    padding1em;
      
    opacity.95;
      
    z-index1;

    Bitte!
    Vor Anfragen im Forum HTML validieren.
    Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

    Vielen Dank an alle Wunschlistenerfüller
    Andreas Burg, Web Solutions

  4. #4
    Contao-Nutzer
    Registriert seit
    07.10.2010.
    Beiträge
    3

    Standard

    Hi,

    werde ich ausprobieren.
    Vielen Dank schon mal.

  5. #5
    Contao-Urgestein Avatar von folkfreund
    Registriert seit
    09.04.2010.
    Beiträge
    1.928

    Standard

    Danke Andreas für's Ausformulieren :-)

    Ich hatte in der Mittagspause keine Möglichkeit, das selbst auszuprobieren.
    Und die Verwendung von .invisible ist eine gute Idee, v.a. wegen der Barrierefreiheit. Daher dann eben nicht das Ein-/Ausblenden via display, sondern durch Rücknahme der Einstellungen der Klasse .invisible - und sogar mit Überbledung! Schön!

    Gruß, folkfreund

  6. #6
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Eigentlich wollte ich nur mal nachsehen, ob der Teasertext in dem Modul zur Verfügung steht.

    Normalerweise nutzt man ja eine JS-Lösung genannt Tooltip für sowas. Damit hätte man noch mehr Möglichkeiten, z.B. dass sich das Popup intelligent positioniert.

    Man kann es auch nur mit display:none, also ohne die Klasse invisible, umsetzen. Kann ja auch so gewollt sein, dass man diese Info von Screenreadern ausschließen möchte. Ich bin es nur so gewohnt, dass ich für Elemente, welche ich ausblende erstmal die Klasse invisible vergebe.
    Bitte!
    Vor Anfragen im Forum HTML validieren.
    Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

    Vielen Dank an alle Wunschlistenerfüller
    Andreas Burg, Web Solutions

  7. #7
    Contao-Nutzer
    Registriert seit
    07.10.2010.
    Beiträge
    3

    Frage

    Mhhh, irgendwie bekomme ich das nicht hin ...
    Wenn ich cal_default so anpasse:

    <div class="event cal_<?= $event['parent'] ?><?= $event['class'] ?>">
    <a href="<?= $event['href'] ?>" title="<?= $event['title'] ?> .... </a>
    <div class="teaser invisible"><?= $event['teaser'] ?></div>
    </div>

    erscheint zwar das Block-Element, aber ohne Inhalt.

    Wenn ich den Taeser direkt einbaue (was evtl auch ausreichen könnte):

    <a href="<?= $event['href'] ?>" title="<?= $event['title'] ?> - <?= $event['teaser'] ?> - (<?php if ($event['day']) echo $event['day']

    erscheint der Teasertext mit HTML Formatierung im Link Popup( <p> Teasertext </p> )
    Geändert von mathi66 (14.06.2017 um 14:22 Uhr)

  8. #8
    Contao-Nutzer
    Registriert seit
    30.05.2017.
    Beiträge
    17

    Standard

    ... und bei :hover-Lösungen auch immer an die Touch-Geräte denken :-)

  9. #9
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von mathi66 Beitrag anzeigen
    Mhhh, irgendwie bekomme ich das nicht hin ...
    Zeige einen Link zur Seite.

    Versuche es so zu machen, wie ich gezeigt habe, inkl. CSS.

    Template-Code hier im Forum in den PHP-Wrapper setzen.
    Bitte!
    Vor Anfragen im Forum HTML validieren.
    Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

    Vielen Dank an alle Wunschlistenerfüller
    Andreas Burg, Web Solutions

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
  •