简单实现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 ...
随机推荐
- python基础-面向过程编程
面向过程编程 面向过程编程其实是一种机械式的思维方式,其核心就是"过程". 过程指的是一种解决问题的步骤,即先干什么再干什么,最后干什么. 优点:将复杂的问题流程化,进而简单化. ...
- 小白学 Python(22):time 和 calendar 模块简单使用
人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...
- HTML——基础知识点1
- 深入理解计算机系统 第三章 程序的机器级表示 part3
这周看了刘老师提供的相关视频,以及书中对应的章节“3.7 过程” 这一节分为运行时栈.转移控制.数据传送.栈上的局部存储.寄存器中的局部存储空间和递归过程这 6 个小节 其中前 3 小节看懂了一部分内 ...
- python 做一个简单的登录接口
# -*- conding :utf-8 -*-# File Name: homewoe# Create Date: 2019/11/20 / 9:15# Change Activity: 2019/ ...
- ACE框架 基于共享内存的分配器
ACE框架提供了一个内存分配器模板,并且提供了(仅且)一个模板实例,基于共存内存的内存分配器.这个共存内存分配器模板实例在ACE框架应用于,基于内存映射的进程通讯,以及进程间同步等. ACE内存分配器 ...
- react-router重定向
① ②通过this.props重定向
- tomcat-9.0.20部署后输出窗口乱码解决方案
问题:启动tomcat的时候,窗口乱码,默认都是UTF-8的,但是控制台是GBK的,要保持一致 可以通过控制台查看本机的编码: : 936 代表 GB2312 解决办法:打开tomcat目录下的c ...
- 线程池的C++实现(一)
现代的软件一般都使用了多线程技术,在有些软件里面,一个线程被创建出来执行了仅仅一个任务,然后就被销毁了.线程的创建与销毁是需要消耗资源,这样为了执行单一任务而被创建出来的线程越多,性能也就越差.如果能 ...
- 扛把子组20191107-4 beta week 2/2 Scrum立会报告+燃尽图 03
此作业的要求参见https://edu.cnblogs.com/campus/nenu/2019fall/homework/9956 一.小组情况 队名:扛把子 组长:孙晓宇 组员:宋晓丽 梁梦瑶 韩 ...