let oSlick = {
dom: null,
isMobile: false,
slickInited: false,
barInterval:null,
currentSlide:,
lastCurrent:-,
init: function () {
let self = this
if (!this.slickInited) {
console.time('oSlick')
let sWinWidth = $(window).width()
if(sWinWidth<=){
$("#slick_dom").draggable("destory");
let jSlick = this.dom = $("#slick_dom")
let banner = $('.banner_img') jSlick
.find('.pc')
.remove() if(banner.length>){
if (jSlick.length <= ) return false
this.slickInited = true
this.bind()
}
}else{
let jSlick = this.dom = $("#slick_dom")
// let _this = this
// jSlick.click(function(){
// _this.bind()
// }); jSlick
.find('.mobile')
.remove() if (jSlick.length <= ) return false
this.slickInited = true
this.bind()
// setInterval( function(){
// if(self.lastCurrent ===self.currentSlide){
// jSlick.slick('slickPlay');
// // jSlick.slick('slickGoTo', self.currentSlide+1);
// // jSlick.on('afterChange', function(event, slick, currentSlide, nextSlide){
// // self.currentSlide = currentSlide
// // // console.log(event, slick, currentSlide, nextSlide)
// // // var elSlide = $(slick.$slides[currentSlide]);
// // // var dataIndex = elSlide.data('index'); // // });
// }
// self.lastCurrent = self.currentSlide
// console.log(self.currentSlide)
// }, 6000);
} console.timeEnd('oSlick')
}
},
bind: function () {
let self = this,
jSlick = self.dom
if($('.slick-initialized').length > ){
return false;
} //新版gallery:http://kenwheeler.github.io/slick/
jSlick.slick({
dots: true,
autoplay: true,
autoplaySpeed: ,
infinite: true,
slidesToShow: ,
slidesToScroll: ,
pauseOnHover: false,
arrows:true,
draggable:true,
customPaging: function (slider, i) {
let bar = $(`<div class="bar_${i}"></div>`)
this.barInterval = setInterval(function () {
if (slider.currentSlide === i) {
bar.addClass("rotation")
}
if (slider.currentSlide !== i) {
bar.removeClass("rotation");
}
}, );
return bar
},
onAfterChange: function(){
var currentSlide = jSlick.slick('slickCurrentSlide');
console.log("",currentSlide)
}
}); jSlick.on('afterChange', function(event, slick, currentSlide, nextSlide){
setInterval( function(){
if(currentSlide !== self.currentSlide){
return
}
jSlick.slick("slickNext")
}, );
self.currentSlide = currentSlide // console.log(event, slick, currentSlide, nextSlide)
// var elSlide = $(slick.$slides[currentSlide]);
// var dataIndex = elSlide.data('index'); }); self.arrowShow()
// jSlick.slick("slickSetOption", "autoplay", true,true);
},
arrowShow: function () {
let self = this,
jSlick = self.dom,
iSlickW = jSlick.width() jSlick
.mousemove(function (event) {
let iX = event.pageX if (iX < iSlickW / ) {
jSlick
.addClass('show_arrow_left')
.removeClass('show_arrow_right')
} else if (iX > (iSlickW * ) / ) {
jSlick
.addClass('show_arrow_right')
.removeClass('show_arrow_left')
} else {
jSlick.removeClass('show_arrow_left show_arrow_right')
}
})
.mouseleave(function () {
jSlick.removeClass('show_arrow_left show_arrow_right')
})
},
destroy: function () {
this.slickInited = false
clearInterval(this.barInterval)
let sWinWidth = $(window).width()
if(sWinWidth<=){
let banner = $('.banner_img')
if(banner.length>){
this.dom && this.dom.slick &&
this.dom
.slick('unslick')
.off('mousemove mouseleave') }
}
}
}

slick轮播图使用大全的更多相关文章

  1. react轮播图----react-slick

    1.安装 npm install react-slick; //安装样式 npm install slick carousel; 再在App.css中引入 @import "~slick-c ...

  2. jquery版本轮播图(es5版本,兼容高)

    优势:基于es5,兼容高.切换动画css配置,轻量,不包含多余代码,可扩展性很高,多个轮播图不会冲突,可配置独有namespace 注: 1.项目需要所写,所以只写了页码的切换,未写上一页下一页按钮, ...

  3. js 基础篇(点击事件轮播图的实现)

    轮播图在以后的应用中还是比较常见的,不需要多少行代码就能实现.但是在只掌握了js基础知识的情况下,怎么来用较少的而且逻辑又简单的方法来实现呢?下面来分析下几种不同的做法: 1.利用位移的方法来实现 首 ...

  4. 实现下来ScrollView放大轮播图

    创建工程,创建一个UIScrollView属性,并遵循其协议: #define kWidth self.view.frame.size.width//屏幕宽 #define kHeight self. ...

  5. ViewPager轮播图

    LoopViewPagerLayout无限轮播 项目地址:https://github.com/why168/LoopViewPagerLayout 支持三种动画: 支持修改轮播的速度: 支持修改滑动 ...

  6. CSS-用伪类制作小箭头(轮播图的左右切换btn)

    先上学习地址:http://www.htmleaf.com/Demo/201610234136.html 作者对轮播图左右按钮的处理方法一改往常,不是简单地用btn.prev+btn.next的图片代 ...

  7. phpcms首页实现轮播图

    1.在你想要加轮播图的位置加入以下 <div id="flowDiagram" > <div id="button"> <span ...

  8. React视角下的轮播图

    天猫购物网站最显眼的就是轮播图了.我在学习一样新js库,一个新框架或新的编程思想的时候,总是感叹"入门必做选项卡,进阶须撸轮播图."作为一个React组件,它是状态操控行为的典型, ...

  9. Jquery 轮播图简易框架

    =====================基本结构===================== <div class="carousel" style="width: ...

随机推荐

  1. Oracle 查询库文件信息

    --.查看Oracle数据库中数据文件信息的命令方法 select b.file_name 物理文件名, b.tablespace_name 表空间, b.bytes// 大小M, (b.bytes- ...

  2. 前端使用Git 切换分支 查看线上远程,本地切换

    想要使用Git切换线上分支时先 得先查看线上分支 git branch -a //查看线上分支 git branch //查看本地分支 这是线上的分支图(当前是master) 知道有那些分支就可以进行 ...

  3. 通过vue-router实现组件间的跳转

    三.通过VueRouter来实现组件之间的跳转提供了3种方式实现跳转:①直接修改地址栏中的路由地址 <!doctype html> <html> <head> &l ...

  4. swagger 访问格式

    boot工程格式如下 http://10.166.10.169:8085/swagger-ui.html 非boot工程加个自己项目名 http://10.166.10.169:8085/xxx/sw ...

  5. vue防止 由于网速出现 闪现{{}}

    防止闪现可能应为网速的原因{{msg}} 一直解析不了, 于是用户就看到它了,不友好, 于是 vue推出 与css配合 [v-cloak] {display:none}

  6. 2019JAVA第一次編程总结

    2019第二周实验报告 Java实验报告 班级 计算机科学与技术二班 学号 20188442 姓名 吴怡君 完成时间 2019/9/7 评分等级 实验一 Java开发环境与简单Java程序 一. 实验 ...

  7. Linux 查看CPU 核数 还有 CPU 个数的命令

    cat /proc/cpuinfo | grep 'physical id' | sort | uniq | wc -l 个数 cat /proc/cpuinfo | grep 'process' | ...

  8. angularJS(二):作用域$scope、控制器、过滤器

    app.controller创建控制器 一.作用域 Scope(作用域) 是应用在 HTML (视图) 和 JavaScript (控制器)之间的纽带. Scope 是一个对象,有可用的方法和属性. ...

  9. mysqldump: [Warning] Using a password on the command line interface can be insecure.

    MySQL 5.6 警告信息 command line interface can be insecure 修复 在命令行输入密码,就会提示这些安全警告信息. Warning: Using a pas ...

  10. RNN, LSTM, GRU cells

    项目需要,先简记cell,有时间再写具体改进原因 RNN cell LSTM cell: GRU cell: reference: 1.https://towardsdatascience.com/a ...