js堆叠卡片轮播图(原创)

所属分类:媒体-幻灯片和轮播图

 43009  362  查看评论 (39)
分享到微信朋友圈
X
js堆叠卡片轮播图(原创) ie兼容10

更新时间:2020-11-15 21:37:21

更新说明:新增pagination分页器选项配置和slideChange自定义事件监听,进一步提升易用性~~


更新时间:2020-09-19 21:59:06

更新说明:

1、新增页面可见性方法判断是否在页面不可见时关闭定时器。

2、详细使用说明见页面文档链接:

https://gejiuyuan.gitee.io/js-dui-die-qia-pian-lun-bo-tu-shi-yong-shuo-ming/

更新时间:2020-09-14 09:23:46

更新说明:上次文件提交有误,现已修改


更新时间:2020-06-09 00:13:21

更新说明:用setAttribute替代dataset(IE11才支持)设置data-自定义属性,从而兼容至IE10~~(但不兼容IE9,毕竟不支持transitionend事件)


更新时间:2020-06-07 21:26:23

更新说明:

    1、移除jQuery依赖,改用原生js;

    2、不在直接操作DOM元素Style属性,而选择在styleSheets中插入css新规则进行样式控制;

    3、具体使用:    

let back = new Back(wrapper, {
    direction: 'vertical', // 垂直方向,默认:horizontal,水平方向
    transition: {
        value: '500ms linear', //transition值,写法与css一样。默认为500ms             
        waitForTransition: true, //是否等待卡片切换完成再执行下一次轮播,默认为false。     
    }, // 也可写成:transition: '300ms',此时waitForTransition默认为false       
    autoplay: {
        enable: true, //自动轮播开关           
        delay: 4000, // 自动轮播时间间隔      
    }, // 也可写成:autoplay:true/false,若为true,delay默认为7000(毫秒)       
    isClickSlide: true, //是否点击卡片切换,默认为false       
    offsetDistance: 100, // 卡片公共偏移值(可选)        
    opacity: .9, // 基础透明度(可选)        
    scale: {
        x: .9, //x轴缩放基值,若不写则为1           
        y: .7, //y轴缩放基值,若不写则为1         
    }, //也可写成:scale: .9,此时代表:scale: {x:.9,y:.9} ,可选填        
    transformOrigin: 'center bottom', // transformOrigin原点,写法参照css语法(可选)       
    navigation: {
        nextEl: $('.demo4 .btn-right'), //切换下一张的点击按钮,默认为null            
        prevEl: $('.demo4 .btn-left') //切换上一章的点击按钮,默认为null      
    },
    baseIndex: 100, //卡片的基础zIndex值,值越高,越能避免被其他元素覆盖
});

更新说明:补添了上下切换,只要设置direction='vertical'即可,若不写direction参数则代表左右切换。


更新时间:2019-11-21 09:56:04

var $demo1 = $("div.demo1");
var carousel = new Carousel($demo1.children("ul.container"), { //卡片的父容器
    opacity: .9, //透明度
    scale: [.9], //transform缩放比例,注:
    transition: "300ms", //过渡时长
    switch_btn: $demo1.children("i.btn-direct"), //左右切换按钮
    offset: 100, //间距偏移值,默认为:ul父容器宽度/(卡片数量-1)
    isClickCard: true, //是否开启卡片点击切换,默认false
    isAuto: true, //是否自动轮播,默认false
    interval: 4000 //轮播间隔,默认5s,
    "transform-origin": "center bottom", //transform原点
});

这几天正好学到原型和面向对象知识,就做了个轮播图插件练习一下。该插件轮播效果利用transform和transition实现,不兼容IE9及以下。不过,由于个人水平有限,暂时只写了左右切换,如果需要上下切换的话,可以手动修改插件里的几个参数,也就是将width、left、translate改成相应的height、top、translateY值就ok了。当然,也希望有大神能热心指导下如何将两者整合到一块去,感谢!(●'_'●)

相关插件-幻灯片和轮播图

jQuery自动轮插件jquery.SuperSlide

基于jquery.SuperSlide写的,希望大家喜欢!
  幻灯片和轮播图
 71006  436

自制炫酷的图片轮换效果插件

自制炫酷的图片轮换效果 响应式,自适应
  幻灯片和轮播图
 33732  345

jQuery反转式轮播插件roundabout.js

jQuery反转式轮播插件roundabout.js简单好用,兼容ie6
  幻灯片和轮播图
 22370  248

jQuery个性化数字焦点图代码

jQuery个性化数字焦点图代码,底部4个焦点数字编码,左右展开,同时展开文字说明
  幻灯片和轮播图
 29424  315

讨论这个项目(39)回答他人问题或分享插件使用方法奖励jQ币 评论用户自律公约

    陌生的熟人 i 0
    2021/9/22 16:48:28
    你好,能拖动轮播图片么 回复
    记忆┿ 0
    2021/9/16 10:32:31
    限制不了数量嘛 回复
    浅笑陌路繁华 0
    2021/4/13 19:30:09
    我的数据是动态添加的,怎么不轮播 回复
    祝贺 0
    2021/1/6 10:20:00
    在IE中报这个“Empile”未定义 是怎么回事😵 回复
    焚音 0
    2020/12/1 12:16:43
    我用ie11出现了兼容问题,所有图片重叠了,没有铺开,对应的切换功能无效。在谷歌可以正常使用,请问大佬该怎么解决呢?
        焚音 1
        2020/12/1 14:02:52

        啊,解决了,ie不认识empile.js里面的getClickFun() {}写法,要改写成getClickFun:function(){}。一共有两处需要做这样的处理。至于样式,我删掉下面的margin:0 auto就可以正常显示了,依然是居中,没有影响、

        .wrapper .container {
             position: relative;
             //margin: 0 auto;
        }
    回复
    素履之往 0
    2020/11/29 17:50:20
    作者很棒,给你点个赞 回复
    ☆记※忆★ 成伤 0
    2020/10/10 9:58:04
    有办法实现app端收手势滑动并加惯性吗,就是手势往左滑一下轮播向左还有惯性缓冲 回复
    .clearInterval 0
    2020/9/23 17:50:15
    Cannot convert undefined or null to object empile.js 72行报错,怎么解决
        果,又是甲嘛底讷1
        2020/9/24 7:06:14
        这是在toArray转数组的时候报错了,也就是你传入的值是空的。看看prevEl、nextEl、wrapper啥的都写对没
        .clearInterval0
        2020/9/24 9:06:25
        我只保留了一个demo1,其它demo被删了就报这个错,
        .clearInterval0
        2020/9/24 9:10:21
        好了,不报错了
    回复
    lrvinye 0
    2020/9/18 16:35:32
    我丢,果是衡阳老乡啊😀👍
        果,又是甲嘛底讷0
        2020/9/19 12:46:20
        还是衡阳赖叽好喔~~??
    回复
    美汁汁~ 0
    2020/9/16 15:24:52
    您好,我用了您最新版,默认显示第一个的,为什么左右不对称呢,我试了下好像是奇数卡面和偶数卡面的问题
        果,又是甲嘛底讷1
        2020/9/17 20:36:17
        确实对偶数情况欠考虑了~~ 你将源码这两处改下:
        1、438行:改为mediant = Math.floor((length - 1) / 2)
        2、446行:改为list: list.splice(length - mediant).concat(list)
    回复
😃
  • 😀
  • 😉
  • 😥
  • 😵
  • 😫
  • 😘
  • 😡
  • 👍
  • 🌹
  • 👏
  • 🍺
  • 🍉
  • 🌙
  • 💖
  • 💔
😃
  • 😀
  • 😉
  • 😥
  • 😵
  • 😫
  • 😘
  • 😡
  • 👍
  • 🌹
  • 👏
  • 🍺
  • 🍉
  • 🌙
  • 💖
  • 💔
取消回复