自己随意写了个简单的依赖jquery的轮播图
//轮播图
function Switcher(obj){
this.box = $(obj.box);
this.width = this.box.width();
this.banner = $(obj.banner);
this.list = this.banner.find('li');
this.index = $(obj.btn).find('li').index();
this.btn = $(obj.btn);
this.prev1=$(obj.prev);
this.next1=$(obj.next);
this.timer = obj.timer;
this.autoplay = obj.autoplay;
this.a=0;
this.b=0;
this.d = this.list.length;
this.ani=obj.ani;
this.change = obj.change;
this.init();
}
Switcher.prototype={
init:function(){
this.play = null;
this.fun();
if(this.autoplay==true){this.auto();}
this.prev();
this.next();
this.list.eq(0).css({zIndex:1});
this.btn.find('li').eq(0).addClass(this.change);
},
fun:function(){
var _this = this;
for(var i = 0;i<_this.list.length;i++){
_this.btn.append('<li></li>')
}
_this.btn.find('li').on('click',function(){
clearInterval(_this.play);
_this.a = $(this).index();
$(this).addClass(_this.change).siblings().removeClass(_this.change);
_this.list.eq(_this.a).css(comm.blind_event(_this.ani,0.8,0)).show().siblings().hide();
});
},
auto:function(){
var _this = this;
this.play = setInterval(function(){
_this.a++;
if(_this.a<_this.d){
if(_this.a==_this.d-1){_this.a=-1}
_this.btn.find('li').eq(_this.a).addClass(_this.change).siblings().removeClass(_this.change);
_this.list.eq(_this.a).css(comm.blind_event(_this.ani,0.8,0)).show().siblings().hide();
}
},_this.timer);
},
prev:function(){
var _this=this;
_this.prev1.click(function(){
clearInterval(_this.play);
_this.a--;
if(_this.a==-1){_this.a=_this.d-1}
$('.m-wap .number .show .fen').text(_this.a+1);
_this.btn.find('li').eq(_this.a).addClass(_this.change).siblings().removeClass(_this.change);
_this.list.eq(_this.a).css(comm.blind_event(_this.ani,0.8,0)).show().siblings().hide();
});
},
next:function(){
var _this=this;
_this.next1.click(function(){
clearInterval(_this.play);
_this.a++;
if(_this.a==_this.d){_this.a=0}
$('.m-wap .number .show .fen').text(_this.a+1);
_this.btn.find('li').eq(_this.a).addClass(_this.change).siblings().removeClass(_this.change);
_this.list.eq(_this.a).css(comm.blind_event(_this.ani,0.8,0)).show().siblings().hide();
});
}
};
调用方法很简单,需要依赖animate来自己添加什么显示效果 也可以自己编辑关键帧
此方法只适合pc端并且不能获取index来判断是第几张,适合宣传页面用
var zhanglei = new Switcher({
box: $('.banner'),//最外层div
banner: $('.banner .content'),//包裹图片的ul
timer: 2500,//切换图片时间
prev:$('.banner').find('.prev'),//前进
next:$('.banner').find('.next'),//后退
ani:'fadeIn'
});
自己随意写了个简单的依赖jquery的轮播图的更多相关文章
- 用jQuery实现轮播图效果,js中的排他思想
---恢复内容开始--- jQuery实现轮播图不用单独加载. 思路: a. 通过$("#id名");选择需要的一类标签,获得一个伪数组 b.由于是伪数组的原因,而对数组的处理最多 ...
- 用js和jQuery做轮播图
Javascript或jQuery做轮播图 css样式 <style> a{ text-decoration:none; } .naver{ width: 100%; position:r ...
- 自实现PC端jQuery版轮播图
最近其他项目不是很忙,被安排给公司的官网项目做一个新的页面(之前没接触公司官网项目),其中有一个用到轮播图的地方,最开始想直接用swiper.js插件实现就好了,可是发现官网项目里之前都没有引入过sw ...
- JQuery实现轮播图及其原理
源码: <!DOCTYPE html> <html> <head> <meta charset="utf-8" name="vi ...
- Jquery无缝轮播图的制作
轮播是html页面中比较常见的一种展现形式,也是基础,把轮播图做好,是排版中比较关键的 1.首先是轮播的html元素放置:做轮播之前,要有一个初步的认识 2.每个元素的位置怎样摆放,也是很关键的,这里 ...
- jquery优化轮播图2
继续优化 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...
- jquery改造轮播图1
g改造轮播图1:https://www.cnblogs.com/huanghuali/p/8677338.html <!DOCTYPE html> <html lang=" ...
- jQuery无缝轮播图思路详解-唯品会
效果图如上: 需求:图片自动轮播,鼠标移上停止播放,离开恢复播放,箭头切换图片. html代码 <!--轮播图大盒子开始--> <div class="wrap" ...
- jQuery封装轮播图插件
// 布局要求,必须有一个容器,图片和两个按钮,布局方式自定,小圆点样式固定 // <div class="all"> // <img src="img ...
随机推荐
- python 面向对象学习
------Python面向对象初 下面写一个类的简单实用,以便方便理解类 #python 3.5环境,解释器在linux需要改变 #阅读手册查询readme文件 #作者:S12-陈金彭 class ...
- 使用 Windows AIK 创建自定的客户端系统WIM文件
Windows 7/2008 的AIK 3.0下载页面:地址链接 1.8G [3.1补充包为1.4G] 安装3.0后,升级为3.1方法: xcopy E:\ "C:\Program File ...
- Asp.net MVC 之请求生命周期
今天主要试着描述一下ASP.NET MVC 请求从开始到结束的整个生命周期,了解这些后,对MVC会有一个整体的认识. 这里主要研究了MVC请求的五个过程. 1.创建RouteTable 当ASP.NE ...
- overfitting过拟合
来自:https://www.zhihu.com/question/32246256 其实不完全是噪声和假规律会造成过拟合. (1)打个形象的比方,给一群天鹅让机器来学习天鹅的特征,经过训练后,知道了 ...
- JavaScript基本语法
本节和CSS语法类似,理解这些语法以后,就可以按照Bootstrap的开发规范去开发自己的各种插件了. ||和&&运算符 ||表示,如果第一个元素可以转换为true,则返回第一个元素的 ...
- 伯克利包过滤(Berkeley Packet Filter,BPF)语言
libpcap支持一种功能非常强大的过滤语言——“伯克利包过滤”语法.使用BPF过滤规则,你可以确定该获取和检查哪些流量,忽略哪些流量.BPF让你能够通过比较第2.3.4层协议中各个数据字段值的方法对 ...
- laravel 指定 版本安装
composer create-project laravel/laravel=5.0.* --prefer-dist composer create-project laravel/laravel= ...
- sublime plugin emmet toolkit
[简写规则]1. E 代表HTML标签.2. E#id 代表id属性.3. E.class 代表class属性.4. E[attr=foo] 代表某一个特定属性.5. E{foo} 代表标签包含的内容 ...
- 每天一个 Linux 命令(8):cp 命令
cp命令用来复制文件或者目录,是Linux系统中最常用的命令之一.一般情下,shell会设置一个别名,在命令行下复制文件时,如果目标文件已经存在,就会询问是否覆盖,不管你是否使用-i参数.但是如果是在 ...
- jquery是如何架构的.
心里一直有个疑问. jquery是如何做到一个jQuery即可以当方法用比如$();又可以当对象用$.extend(); 现在总结一下吧 function method(){} var m=new m ...