Ich habe viele ähnliche Fragen gesehen, konnte aber keine Lösung finden. Ich habe ein Bootstrap-Jumbotron und einen Satz von 3 Bildern, um alle 10 Sekunden durchzulaufen. Das Problem ist, dass die erste URL erst nach Ablauf der ersten 10 Sekunden angezeigt wird. Nachdem das Array fertig ist, werden die Bilder korrekt wiedergegeben. Erst beim ersten Laden ist das Bild leer. Ich habe versucht, das Hintergrundbild über CSS und JQuery zu setzen, aber es gab immer noch Probleme mit dem Überspringen beim Laden des ersten Bildes.Drehe Hintergrund-URL alle 10 Sekunden
Der Kodex
var jumbotronBG = ['/image1.jpg', '/image2.jpg', '/image3.jpg'];
var changeImage = $(".jumbotron");
var i = 0;
setInterval(function() {
changeImage.css({'background-image': 'url(' + jumbotronBG[i] + ")"});
i = i + 1;
if (i == jumbotronBG.length) {
i = 0;
}
}, 10000);
<div class="jumbotron">
</div>
Nur müssen einen Weg Zyklus alle 3 Bilder mit der Faust zu sein image1.jpg beim Laden der Seite zu finden.
changeImage.css ({'Hintergrundbild': 'URL (' + mainIndexGif [i] + ')'}); ist die aktuelle Verwendung von Ticks/Quotes – Dylan
Setzen Sie einfach die css von '.jumbotron' in Ihrer' .css' Datei auf 'background-image: url (/image1.jpg)' und dann, wenn Sie die Seite laden, wird es die erste sein Bild, dann starten Sie das Intervall bei 2 zum ersten Mal nach dem Laden der Seite. – Adjit
Nur aus Neugier: Warum verwenden Sie Bootstrap [Karussell] (https://getbootstrap.com/javascript/#carousel) nicht, da Sie Bootstrap verwenden? Ich denke, dass Sie HTML jedem Einzelteil hinzufügen können, also können Sie ein Hintergrundbild für jedes Element einstellen. Und Sie können die Zeit zwischen Übergängen mit Optionen anpassen. –