owl.carousel.js深入使用

”owl.carousel.js“

一个jquery的幻灯片插件。

简介

Owl Carousel 是一个强大、实用但小巧的 jQuery 幻灯片插件,它具有一下特点:

兼容所有浏览器
支持响应式
支持 CSS3 过度
支持触摸事件
支持 JSON 及自定义 JSON 格式
支持进度条
支持自定义事件
支持延迟加载
支持自适应高度
……

Owl Carousel 提供了众多的参数、回调函数及自定义事件(具体请往下浏览),所以它几乎可以满足你的所有要求。

兼容

浏览器兼容:兼容所有浏览器,包括 IE6、IE7。

jQuery 兼容:兼容 1.7 及以上版本。

使用方法

1、引入文件

<link href="css/owl.carousel.css" rel="stylesheet">
<link href="css/owl.theme.css" rel="stylesheet">
<script src="js/jquery.min.js"></script>
<script src="js/owl.carousel.js"></script>

2、HTML

<div id="owl-demo" class="owl-carousel">
    <div>1</div>
    <div>2</div>
    <div>3</div>
    <div>4</div>
    <div>5</div>
    <div>6</div>
    <div>7</div>
    <div>8</div>
</div>

3、JavaScript

$(function(){
    $('#owl-example').owlCarousel();
});

参数

参数   类型   默认值   说明
items   整数5幻灯片每页可见个数
itemsDesktop 数组[1199,4]设置浏览器宽度和幻灯片可见个数,格式为[X,Y],X 为浏览器宽度,Y 为可见个数,如[1199,4]就是如果浏览器宽度小于1199,每页显示 4 张,此参数主要用于响应式设计。也可以使用 false
itemsDesktopSmall  数组[979,3]同上
itemsTablet  数组[768,2]同上
itemsTabletSmall  数组false同上,默认为 false
itemsMobile  数组[479,1]同上
itemsCustom  数组false
singleItem  布尔值false是否只显示一张
itemsScaleUp  布尔值false
slideSpeed  整数200幻灯片切换速度,以毫秒为单位
paginationSpeed  整数800分页切换速度,以毫秒为单位
rewindSpeed  整数1000重回速度,以毫秒为单位
autoPlay  布尔值/整数false自动播放,可选布尔值或整数,若使用整数,如 3000,表示 3 秒切换一次;若设置为 true,默认 5 秒切换一次
stopOnHover  布尔值false鼠标悬停停止自动播放
navigation  布尔值false显示“上一个”、“下一个”
navigationText  数组[“prev”,”next”]设置“上一个”、“下一个”文字,默认是[“prev”,”next”]
rewindNav  布尔值true滑动到第一个
scrollPerPage  布尔值false每页滚动而不是每个项目滚动
pagination  布尔值true显示分页
paginationNumbers  布尔值false分页按钮显示数字
responsive  布尔值true
responsiveRefreshRate  整数200每 200 毫秒检测窗口宽度并做相应的调整,主要用于响应式
responsiveBaseWidthjQuery 选择器window
baseClass  字符串owl-carousel添加 CSS,如果不需要,最好不要使用
theme  字符串owl-theme主题样式,可以自行添加以符合你的要求
lazyLoad  布尔值false延迟加载
lazyFollow  布尔值true当使用分页时,如果跨页浏览,将不加载跳过页面的图片,只加载所要显示页面的图片,如果设置为 false,则会加载跳过页面的图片。这是 lazyLoad 的子选项
lazyEffect  布尔值/字符串fade延迟加载图片的显示效果,默认以 400 毫秒淡入,若为 false 则不使用效果
autoHeight  布尔值false自动使用高度
jsonPath  字符串falseJSON 文件路径
jsonSuccess  函数false处理自定义 JSON 格式的函数
dragBeforeAnimFinish  布尔值true忽略过度是否完成(只限拖动)
mouseDrag  布尔值true关闭/开启鼠标事件
touchDrag  布尔值true关闭/开启触摸事件
addClassActive  布尔值false给可见的项目加入 “active” 类
transitionStyle  字符串false添加 CSS3 过度效果

回调函数

变量 类型 默认值 说明

beforeUpdate 函数 false 响应之后的回调函数

afterUpdate 函数 false 响应之前的回调函数

beforeInit 函数 false 初始化之前的回调函数

afterInit 函数 false 初始化之后的回调函数

beforeMove 函数 false 移动之前的回调函数

afterMove 函数 false 移动之后的回调函数

afterAction 函数 false 初始化之后的回调函数

startDragging 函数 false 拖动的回调函数

afterLazyLoad 函数 false 延迟加载之后的回调函数

自定义事件

事件 说明

owl.prev 到上一个

owl.next 到下一个

owl.play 自动播放,可传递一个参数作为播放速度

owl.stop 停止自动播放

owl.goTo 跳到第几个

owl.jumpTo 不使用动画跳到第几个

这些是网上很轻易就能弄能搜到的。

重要的 重要的  重要的

这个是这个插件的地址 http://owlcarousel2.github.io/OwlCarousel2/docs/started-welcome.html

Events api:http://owlcarousel2.github.io/OwlCarousel2/docs/api-events.html

我们还可以再利用他们的事件做一些事情,比如

var owl = $('.owl-carousel');
owl.owlCarousel();
// Listen to owl events:
owl.on('changed.owl.carousel', function(event) {
    //做点有意义的事情
    //比如单页上的动画
})

再比如

    // Carousel Feature Slide
    var owlCrouselFeatureSlide = function() {
        
        var owl = $('.owl-carousel');

        owl.on('initialized.owl.carousel change.owl.carousel',function(elem){
            var current = elem.item.index;
            $(elem.target).find(".owl-item").eq(current).find(".to-animate").removeClass('fadeInUp animated');
            $(elem.target).find(".owl-item").eq(current).find(".to-animate-2").removeClass('fadeInUp animated');
        
        });
        owl.on('initialized.owl.carousel changed.owl.carousel',function(elem){
            setTimeout(function(){
                var current = elem.item.index;
                $(elem.target).find(".owl-item").eq(current).find(".to-animate").addClass('fadeInUp animated');
            }, 700);
            setTimeout(function(){
                var current = elem.item.index;
                $(elem.target).find(".owl-item").eq(current).find(".to-animate-2").addClass('fadeInUp animated');
            }, 900);
         });
        owl.owlCarousel({
            items: 1,
            loop: true,
            margin: 0,
            responsiveClass: true,
            nav: true,
            dots: true,
            autoHeight: true,
            smartSpeed: 500,
            autoplay: true,
            autoplayTimeout: 5000,
            autoplayHoverPause: true,
            navText: [    
              "<i class='icon-arrow-left2 owl-direction'></i>",
              "<i class='icon-arrow-right2 owl-direction'></i>"
             ]
        });

    };

微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?