简单实现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 ...
随机推荐
- VNC的安装以及使用
VNC (Virtual Network Console)是虚拟网络控制台的缩写.它 是一款优秀的远程控制工具软件,由著名的 AT&T 的欧洲研究实验室开发的.VNC 是在基于 UNIX 和 ...
- Oracle instant client免安装Oracle客户端配置
不想安装几个G的完整版client,可以直接通过安装包安装的时候选择instant client,如果没有安装包,也可以直接去官网下载一个即时客户端,64位的windows包大小只有78MB左右 传送 ...
- 深入理解 PHP 的 7 个预定义接口
深入理解预定义接口 场景:平常工作中写的都是业务模块,很少会去实现这样的接口,但是在框架里面用的倒是很多. 1. Traversable(遍历)接口 该接口不能被类直接实现,如果直接写了一个普通类 ...
- 区块链轻松上手:原理、源码、搭建与应用pdf电子版下载
区块链轻松上手:原理.源码.搭建与应用pdf电子版下载 链接:https://pan.baidu.com/s/1rKF4U9wq612RMIChs0zv8w提取码:hquz <区块链轻松上手:原 ...
- PHP 向数组头部插入数据
PHP 向数组头部插入数据 函数: array_unshift() 示例: $s = array('a' => 0, 'b' => 3); array_unshift($s, '5'); ...
- jeson navo
QT TEMPLATE = app CONFIG += console c++11 CONFIG -= app_bundle CONFIG -= qt INCLUDEPATH += /usr/loca ...
- Java开发中常用jar包整理及使用
本文整理了我自己在Java开发中常用的jar包以及常用的API记录. <!-- https://mvnrepository.com/artifact/org.apache.commons/com ...
- 🔥《手把手教你》系列练习篇之1-python+ selenium自动化测试(详细教程)
1.简介 相信各位小伙伴或者同学们通过前面已经介绍了的Python+Selenium基础篇,通过前面几篇文章的介绍和练习,Selenium+Python的webUI自动化测试算是 一只脚已经迈入这个门 ...
- Hystrix完整配置列表
前提 Hystrix在2018年11月20日之后已经停止维护,最后一个提交记录是:Latest commit 3cb2158 on 20 Nov 2018,最后一个正式版本为1.5.18.鉴于目前所在 ...
- 网站优化之使用Free marker静态化网站文章页
博客做出来的时候就想要把一些栏目和文章页都静态化处理,当时没啥时间搞,就一直没去弄.但是最近的工作就是做网站,用cms快速搭出了几个网站,cms搭建网站是真的方便啊 如果没有需要二次开发实现的功能,那 ...