Ich habe ein carousel
mit erstellt Bootstrap 3.3
und es funktioniert auf meinem lokalen Computer, aber wenn ich das Ganze auf einen Server hochlade, auf dem die Bootstrap-JS-Datei zusammen mit anderen Dateien in einer einzigen Datei kompiliert wird, wird folgende Fehlermeldung angezeigt:
Cannot read property 'offsetWidth' of undefined
- Hat sich jemand damit auseinandergesetzt und gibt es bekannte Lösungen für dieses Problem?
Antworten:
Für mich war es, weil ich
active
auf keiner der Folien eine Klasse festgelegt hatte.quelle
$next[0].offsetWidth
if (typeof $next == 'object' && $next.length) $next[0].offsetWidth // force reflow
Für mich, wechselte ich
class='carousel-item'
zuclass='item'
dieser mag<div class="item"> <img class="img-responsive" src="..." alt="..."> </div>
quelle
Entfernen Sie die Klasse 'Karussellfolie' beim Laden der Seite und fügen Sie sie dynamisch hinzu, wenn das Bild mit jquery geladen wird. Dies wurde für mich behoben
quelle
Ich habe den gleichen Fehler bekommen. Da ich Alpha-Klassennamen der Version 4 verwendet habe, wie
carousel-control-next
z. B. Als ich mit Version 3 geändert habe, wurde das Problem gelöst.quelle
"Ändern Sie zu if (typeof $ next == 'object' && $ next.length) $ next [0] .offsetWidth" - hat nicht geholfen. Wenn Sie Bootstrap 3 in PHP konvertieren (für WordPress-Theme), fügen Sie beim Hinzufügen von WP_Query ($ loop = new WP_Query ($ args);) $ count = 0; ein. Und und am Ende vor dem Ende; füge $ count ++ hinzu;.
quelle
Ich habe den gleichen Fehler erhalten, aber in meinem Fall habe ich Klassennamen für das Karussellelement als .karussellelement geschrieben, auf das die Datei bootstrap.css .item verweist. SO FEHLER gelöst. carosel-item wird in item umbenannt
<div class="carousel-item active"></div>
Umbenannt auf Folgendes:
<div class="item active"></div>
quelle