69
votes

I created a carousel with Bootstrap 3.3 and it works on my local machine, but when I upload the whole thing on server where the bootstrap js file is being compiled together with other files in a single file, I get this error:

Cannot read property 'offsetWidth' of undefined - has anybody faced this and are there any known solutions to this issue?

7
Can you link to the page with the error? Or could you put it in jsFiddle? - Alex W

7 Answers

178
votes

For me it was because I hadn't set an active class on any of the slides.

106
votes

For me, I changed class='carousel-item' to class='item' like this

<div class="item">
    <img class="img-responsive" src="..." alt="...">
</div>
8
votes

Remove the class 'Carousal slide' on page load & add it dynamically when image gets loaded using jquery.This fixed for me

1
votes

I got same error. Because i used v4 alpha class names like carousel-control-next When i changed with v3, problem solved.

0
votes

I have got the same error, but in my case I wrote class names for carousel item as .carousel-item the bootstrap.css is referring .item. SO ERROR solved. carosel-item is renamed to item

<div class="carousel-item active"></div>

RENAMED To the following:

<div class="item active"></div>
0
votes

"Change to if (typeof $next == 'object' && $next.length) $next[0].offsetWidth" -did not help. if you convert Bootstrap 3 to php(for WordPress theme), when adding WP_Query ($loop = new WP_Query( $args );) insert $count = 0;. And and at the end before endwhile; add $count++;.

0
votes

if you're using the compiled bootstrap, one of the ways of fixing it is by editing the bootstrap.min.js before the line

$next[0].offsetWidth 

force reflow Change to

if (typeof $next == 'object' && $next.length) $next[0].offsetWidth // force reflow