More Demos


Check more demos here! See what Owl can do.

How To Use

1. Load jQuery and include Owl Carousel plugin files

To use Owl Carousel, you’ll need to make sure both the Owl and jQuery 1.7 or higher scripts are included.

<!-- Important Owl stylesheet -->
<link rel="stylesheet" href="owl-carousel/owl.carousel.css">

<!-- Default Theme -->
<link rel="stylesheet" href="owl-carousel/owl.theme.css">

<!--  jQuery 1.7+  -->
<script src="jquery-1.9.1.min.js"></script>

<!-- Include js plugin -->
<script src="assets/owl-carousel/owl.carousel.js"></script>

2. Set up your HTML

You don't need any special markup. All you need is to wrap your divs(owl works with any type element) inside the container element <div class="owl-carousel">. Class "owl-carousel" is mandatory to apply proper styles that come from owl.carousel.css file.

<div id="owl-example" class="owl-carousel">
  <div> Your Content </div>
  <div> Your Content </div>
  <div> Your Content </div>
  <div> Your Content </div>
  <div> Your Content </div>
  <div> Your Content </div>
  <div> Your Content </div>

3. Call the plugin

Now call the Owl initializer function and your carousel is ready.

$(document).ready(function() {




1. Options

All of the options below are available to customize Owl Carousel.

Variable Default Type Description
items 5 int This variable allows you to set the maximum amount of items displayed at a time with the widest browser width
itemsDesktop [1199,4] array This allows you to preset the number of slides visible with a particular browser width. The format is [x,y] whereby x=browser width and y=number of slides displayed. For example [1199,4] means that if(window<=1199){ show 4 slides per page} Alternatively use itemsDesktop: false to override these settings. Check my Custom Demo
itemsDesktopSmall [979,3] array As above.
itemsTablet [768,2] array As above.
itemsTabletSmall false array As above. Default value is disabled.
itemsMobile [479,1] array As above
singleItem false boolean Display only one item. See demo
slideSpeed 200 int Slide speed in milliseconds
paginationSpeed 800 int Pagination speed in milliseconds
rewindSpeed 1000 int Rewind speed in milliseconds
autoPlay false int/boolean Change to any integrer for example autoPlay : 5000 to play every 5 seconds. If you set autoPlay: true default speed will be 5 seconds.
stopOnHover false boolean Stop autoplay on mouse hover
navigation false boolean Display "next" and "prev" buttons.
navigationText ["prev","next"] array You can cusomize your own text for navigation. To get empty buttons use navigationText : false. Also HTML can be used here
rewindNav true boolean Slide to first item. Use rewindSpeed to change animation speed.
scrollPerPage false boolean Scroll per page not per item.
pagination true boolean Show pagination.
paginationNumbers false boolean Show numbers inside pagination buttons
responsive true boolean You can use Owl Carousel on desktop-only websites too! Just change that to "false" to disable resposive capabilities
responsiveRefreshRate 200 int Check window width changes every 200ms for responsive actions
responsiveBaseWidth window jQuery selector Owl Carousel check window for browser width changes. You can use any other jQuery element to check width changes for example ".owl-demo". Owl will change only if ".owl-demo" get new width.
baseClass "owl-carousel" string Automaticly added class for base CSS styles. Best not to change it if you don't need to.
theme "owl-theme" string Default Owl CSS styles for navigation and buttons. Change it to match your own theme
lazyLoad false boolean Delays loading of images. Images outside of viewport won't be loaded before user scrolls to them. Great for mobile devices to speed up page loadings. IMG need special markup class="lazyOwl" and data-src="your img path". See example.
lazyFollow true boolean When pagination used, it skips loading the images from pages that got skipped. It only loads the images that get displayed in viewport. If set to false, all images get loaded when pagination used. It is a sub setting of the lazy load function.
autoHeight false boolean Add height to owl-wrapper-outer so you can use diffrent heights on slides. Use it only for one item per page setting.
jsonPath false string Allows you to load directly from a jSon file. The JSON structure you use needs to match the owl JSON structure used here. To use custom JSON structure see jsonSuccess option.
jsonSuccess false function Success callback for $.getJSON build in into carousel. See demo with custom JSON structure here.
mouseDrag true boolean Turn off/on mouse events.
touchDrag true boolean Turn off/on touch events.
addClassActive false boolean Add "active" classes on visible items. Works with any numbers of items on screen.
transitionStyle false string Add CSS3 transition style. Works only with one item on screen. See Demo

2. Callbacks

Variable Default Type Description
beforeInit false function Before initialization callback
afterInit false function After initialization callback
beforeMove false function Before move callback
afterMove false function After move callback
afterAction false function After startup, move and update callback
startDragging false function Call this function while dragging.

3. Defaults

Carousel default settings


    // Most important owl features
    items : 5,
    itemsDesktop : [1199,4],
    itemsDesktopSmall : [980,3],
    itemsTablet: [768,2],
    itemsTabletSmall: false,
    itemsMobile : [479,1],
    singleItem : false,

    //Basic Speeds
    slideSpeed : 200,
    paginationSpeed : 800,
    rewindSpeed : 1000,

    autoPlay : false,
    stopOnHover : false,

    // Navigation
    navigation : false,
    navigationText : ["prev","next"],
    rewindNav : true,
    scrollPerPage : false,

    pagination : true,
    paginationNumbers: false,

    // Responsive 
    responsive: true,
    responsiveRefreshRate : 200,
    responsiveBaseWidth: window,

    // CSS Styles
    baseClass : "owl-carousel",
    theme : "owl-theme",

    //Lazy load
    lazyLoad : false,
    lazyFollow : true,

    //Auto height
    autoHeight : false,

    jsonPath : false, 
    jsonSuccess : false,

    //Mouse Events
    mouseDrag : true,
    touchDrag : true,

    transitionStyle : false,

    // Other
    addClassActive : false,

    beforeInit: false, 
    afterInit: false, 
    beforeMove: false, 
    afterMove: false,
    afterAction: false,
    startDragging : false


4. Custom Events

Owl Carousel handles a few basic events. Mainly use them for custom navigation. See Demo

"owl.prev" //Go to previous
"" //Go to next
"" //Autoplay, also this event accept autoPlay speed as second parameter
"owl.stop" //Stop
"owl.goTo" //goTo provided item
"owl.jumpTo" //jumpTo provided item. Without slide animation.

5. Owl Data methods

To use Owl Carousel $.data use delegate function.

//Initialize Plugin

//get carousel instance data and store it in variable owl
var owl = $(".owl-carousel").data('owlCarousel');

//Public methods   // Go to next slide
owl.prev()   // Go to previous slide
owl.goTo(x)  // Go to x slide
owl.jumpTo(x)  // Go to x slide without slide animation

owl.buildControls()    // Build Controlls
owl.destroyControls()  // Remove Controlls // Autoplay
owl.stop() // Autoplay Stop


Can i use it for free?
Can i use it for ecommerce?
Has it any licence?
Can i ask for a new functionality?
Yes! Use Github
I need help!
Send me an email, visit Github or add comment below.
Don't forget to add link to your demo/example website!
Does it has infinity scroll/circle/loop slides?
Not at the moment. Maybe in future
What's new in latest release?


comments powered by Disqus