Ich verwende Divi auf einer Website, die ich für einen Kunden erstelle, und auf der Homepage habe ich ein Preloader-Setup, um die Seite und Bilder im Hintergrund zu laden, bevor die Website angezeigt wird. Das einzige Problem dabei ist, dass die erste Folie im Divi-Schieberegler in voller Breite gleichzeitig mit dem Laden der Seite beginnt. Wenn der Preloader fertig ist und vom Bildschirm ausgeblendet wird, wechselt die erste Folie zu schnell zur zweiten Folie.
Ich habe ElegantThemes gefragt, und sie sagen, dass meine Anfrage außerhalb des Supportbereichs liegt. Ich weiß nicht einmal, wo ich anfangen soll, etwas anzupassen, damit nur das Timing der ERSTEN Folie länger ist als das der anderen Folien.
Also, ich denke, meine Frage ist, Wie kann ich das Übergangstiming nur für die ERSTE Folie auf einem Divi Fullwidth Slider ändern?
Hier ist der Link:: http://mfinangaphoto.wpengine.com
Ich glaube, ich habe den Code, der die automatische Animationsgeschwindigkeit der Folien bestimmt, unter /wp-content/themes/Divi/includes/builder/main-modules.php gefunden:
$fullwidth="et_pb_fullwidth_slider" === $function_name ? 'on' : 'off';
$class="";
$class .= 'off' === $fullwidth ? ' et_pb_slider_fullwidth_off' : '';
$class .= 'off' === $show_arrows ? ' et_pb_slider_no_arrows' : '';
$class .= 'off' === $show_pagination ? ' et_pb_slider_no_pagination' : '';
$class .= 'on' === $parallax ? ' et_pb_slider_parallax' : '';
$class .= 'on' === $auto ? ' et_slider_auto et_slider_speed_' . esc_attr( $auto_speed ) : '';
$class .= 'on' === $auto_ignore_hover ? ' et_slider_auto_ignore_hover' : '';
$class .= 'on' === $remove_inner_shadow ? ' et_pb_slider_no_shadow' : '';
$class .= 'on' === $show_image_video_mobile ? ' et_pb_slider_show_image' : '';
$output = sprintf(
'<div%4$s class="et_pb_module et_pb_slider%1$s%3$s%5$s">
<div class="et_pb_slides">
%2$s
</div> <!-- .et_pb_slides -->
</div> <!-- .et_pb_slider -->
',
$class,
$content,
( $et_pb_slider_has_video ? ' et_pb_preload' : '' ),
( '' !== $module_id ? sprintf( ' id="%1$s"', esc_attr( $module_id ) ) : '' ),
( '' !== $module_class ? sprintf( ' %1$s', esc_attr( $module_class ) ) : '' )
);
return $output;
Wie kann ich dies so anpassen, dass die erste Folie eine andere Foliengeschwindigkeit hat als die restlichen Folien?
Da Sie eine einfache Fade-Slideshow verwenden, würde ich empfehlen, so etwas wie dieses verschlungene Plugin zu vermeiden, insbesondere wenn Sie JS verstehen. Oder wählen Sie ein einfacheres Plugin wie wordpress.org/plugins/easing-slider
– eingemachtes Fleisch7
23. Februar 2017 um 23:43 Uhr
Sie könnten versuchen, dieser “Folie” mit jQuery einen Selektor hinzuzufügen und den aktuellen Übergang mit einem neuen zu überschreiben. spezifisch für diese Folie, wenn auch hacky
– Fred Randall
28. Februar 2017 um 16:00 Uhr