You can use imagesLoaded with vanilla JS, Using a callback function is the same as binding it to the always event. Bind events with vanilla JS with .on(), .off(), and .once() methods. Detect when background images have loaded, in addition to <img>s. Set { background: true } to detect when the element's background image has loaded. Set to a selector string like { background: '.item' } to detect when the background images of child elements have loaded. The always event is triggered after all images have been either loaded or confirmed broken. and the done event is triggered after all images have successfully loaded without any broken images. imagesLoaded works with Browserify. imagesLoaded works with RequireJS. ...