简单实现jquery轮播图
首先需要定义个切换图片的funcation
1、找到图片所在li,将其显示出来,并缩放1.1倍
2、其他兄弟li,渐变隐藏,并还原至原大小比例
3、将底部的圆点列表ul中对应的li,添加样式,其他兄弟元素移除该样式
function changeimg(a){
$('.imgs li ').eq(a).fadeIn(500).css("transform" ,"scale(1.1)").
siblings().fadeOut('slow').css("transform" ,"scale(1.0)");
$('.btn-list li').eq(a).addClass('active-list').siblings().removeClass('active-list');
};
写一个自动播放的funcation,实现每5秒自动切换
1、定义一个全局 time,和set
2、设置每5秒切换一次图片
function autoplay(){
time = setInterval(function(){
set++ ;
if(set > len -1 )
{
set = 0 ;
}
changeimg(set) ;
} , 5000);
};
给切换按钮绑定事件
1、点击切换按钮时候,得先停止自动播放
2、根据所点击的按钮将全局变量set自增或者自减
3、将自动播放开启
//btn
//up
$('.btn .up').click(function(){
clearInterval(time) ;
set-- ;
if(set < 0 )
{
set = len-1 ;
}
changeimg(set) ;
autoplay() ;
});
//down
$('.btn .down').click(function(){
clearInterval(time) ;
set++ ;
if(set === len )
{
set = 0 ;
}
changeimg(set) ;
autoplay() ;
});
写完以上内容,我们就剩下最后一个步骤了。如果点击那些小圆点,要如何才能切换到对应的图片上去。问题其实不难,回头看下,咱们写的切换图片函数,是需要传参的,这也就意味着我们只需要找到对应的小圆点的索引传进函数里,就可以实现。
//btn-list
$('.btn-list li').click(function(){
clearInterval(time) ;
set = $(this).index() ;
changeimg(set) ;
autoplay() ;
});
这里我们需要注意一下,也是需要先暂停自动切换。
再次回头我们发现,还漏掉了一个环节。如果当鼠标移动上去的时候,需要让自动切换暂停,鼠标移开,又开始自动切换。这里我们使用到了hover
注意注意!time是全局的,所以我们可以访问到
$('.imgs li').hover(function(){clearInterval(time)} , function(){autoplay()});
简单实现jquery轮播图的更多相关文章
- 超级简单的jquery轮播图demo
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 最简单的jQuery轮播图(原理解析)
html: <div class="middle_right"> <div id="lunbobox"> <div id=&quo ...
- 前端(十七)—— jQuery基础:jQuery的基本使用、JQ功能概括、JS对象与JQ对象转换、Ajax简单应用、轮播图
jQuery的基本使用.JQ功能概括.JS对象与JQ对象转换.Ajax简单应用.轮播图 一.认识jQuery 1.什么是jQuery jQuery是对原生JavaScript二次封装的工具函数集合 j ...
- 一步一步拆解一个简单的iOS轮播图(三图)
导言(可以不看): 不吹不黑,也许是东半球最简单的iOS轮播图拆分注释(讲解不敢当)了(tree new bee).(一句话包含两个人,你能猜到有谁吗?提示:一个在卖手机,一个最近在卖书)哈哈... ...
- jQuery轮播图(二)利用构造函数和原型创建对象以实现继承
本文是在我开始学习JavaScript继承时,对原型继承的一些理解和运用.文中所述的继承方式均是使用js特有的原型链方式,实际上有了ES6的类之后,实现继承的就变得十分简单了,所以这种写法现在也不在推 ...
- jQuery轮播图(一)轮播实现并封装
利用面向对象自己动手写了一个封装好的jquery轮播组件,可满足一般需求,不仅使用简单且复用性高. demo:点此预览 代码地址:https://github.com/zsqosos/componen ...
- Jquery 轮播图简易框架
=====================基本结构===================== <div class="carousel" style="width: ...
- 原生js实现简单移动端轮播图
最近项目不是很忙,自己就用原生js写了一个简单的移动端轮播图的小demo,可实现自动轮播和手势滑动轮播,然后就把它记录到个人博客里.还有很多不足的地方,希望多多指出,以便改进. 1.代码部分 分为四个 ...
- jQuery轮播图--不使用插件
说明:引入jquery.min.js 将轮播图放入imgs文件夹 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitiona ...
随机推荐
- Apache的虚拟主机功能
Apache的虚拟主机功能 (Virtual Host) 是可以让一台服务器基于IP.主机名或端口号实现提供多个网站服务的技术. 第一种情况:基于IP地址 这种情况很常见:一台服务器拥有多个IP地址, ...
- GC四大算法
引言: 前面的文章提到,Heap包括了PSYoungGen.ParOldGen.Metaspace.JVM 在进行GC时,并非每次都对上面三个内存区域一起回收的,大部分时候回收的都是新生代.由于新生代 ...
- PHP过滤换行的方法
PHP过滤换行的方法 <pre> public function trimall($str) { $qian = array(" ", " ", & ...
- PHP中高级面试题 一个高频面试题:怎么保证缓存与数据库的双写一致性?
分布式缓存是现在很多分布式应用中必不可少的组件,但是用到了分布式缓存,就可能会涉及到缓存与数据库双存储双写,你只要是双写,就一定会有数据一致性的问题,那么你如何解决一致性问题? Cache Aside ...
- 结合Spring Security进行web应用会话安全管理
在本文中,将为大家说明如何结合Spring Security 和Spring Session管理web应用的会话. 一.Spring Security创建使用session的方法 Spring Sec ...
- FB力挺的Pytorch深度学习 书本来了
获得 fb首席科学家力挺的 pytorch教程 发布啦, 看截图 : def send(self): """ 必须继承BaseMessage,然后其中必须编写sen ...
- css三大特效之继承性
css三大特效之继承性