Ankündigung

Einklappen
Keine Ankündigung bisher.

Slider wird im Popup nicht angezeigt - Contao 4.9.26

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Slider wird im Popup nicht angezeigt - Contao 4.9.26

    Hallo,

    ich habe über den Elementyp "Popup [Start]" einen Artikel erstellt, welcher Text und einen Slider enthält. Leider wird der Slider erst angezeigt, wenn ich das Browserfenster bewege. Einen Scriptfehler wird in den DEVTools nicht angezeigt.

    Der Artikel wird über ein Modul im Seitenlayout eingebunden. Das Popup öffnet sich ordnungsgemäß. Sämtlicher Textinhalt wird angezeigt. Nur der Slider nicht.

    Code:
    <div class="<?php echo $this->class; ?> <?php echo $this->field('overlay')->value(); ?> ce_pop_up_<?= $this->id; ?>">
    <div class="ce_popup_overlay"></div>
    <div class="ce_popup_content" style="max-width: <?php echo $this->field('max_width')->value(); ?>px">
    <i class="popup_close"></i>
    <div class="checkbox">
    <input type="checkbox" class="ce_popup_checkbox" id="ce_popup_checkbox">
    <label for="ce_popup_checkbox"><?php echo $this->field('label')->value(); ?></label>
    </div>
    
    <script>
    /* <![CDATA[ */
    
    jQuery(document).ready(function()
    {
    var delay = <?= $this->field('delay')->value() ?: 2000; ?>;
    var ce_popup_isClosed = jQuery.cookie('ce_popup_isClosed');
    
    if (!ce_popup_isClosed == 1)
    {
    setTimeout(function()
    {
    jQuery('.ce_popup_start').addClass('popup_show');
    },delay);
    }
    
    jQuery('.popup_close').click(function(){
    jQuery('.ce_popup_overlay, .ce_popup_content').fadeOut('slow');
    
    if( jQuery('.ce_popup_checkbox').is(':checked') ) {
    jQuery.cookie('ce_popup_isClosed', 1);
    }
    });
    });
    
    /* ]]> */
    </script>
    Hat jemand eine Idee woran das liegen kann?

    Viele Grüße Charlie

  • #2
    Hi,
    das Popup ist zum Zeitpunkt des ersten Aufrufs der Seite ein verstecktes Element. Damit blockieren die Browser die Ausführung sämtliches JS für Elemente innerhalb, weil diese ebenfalls versteckt sind. (Siehe Google Maps in Tabs). Das ist eine Sicherheitsmaßnahme der Browser "versteckte" Scripte lahmzulegen.

    Lösung:
    Der Slider bzw. sämtliche betroffnen Scripte, müssen beim Öffnen des Popups manuell initialisiert werden.

    http://www.premium-contao-themes.com

    Kommentar

    Lädt...
    X