1、轮播一:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
*{
padding: 0;
margin: 0;
}
ul{
list-style: none;
}
.slider-list{ width: 580px;
overflow: hidden;
margin: 100px auto;
position: relative;
}
.slider-list .slider-wrapper{
height: 470px;
}
.slider-wrapper ul{
height: 100%; position: relative; }
.slider-wrapper ul li{
float: left;
width: 590px;
height: 470px; }
.slider-wrapper ul li a{
display: block;
width: 100%;
height: 100%;
}
.focus-img{
width: 590px;
height: 470px;
}
button{
position: absolute;
width: 24px;
height: 40px;
top: 50%;
line-height: 40px;
text-align: center;
background-color: rgba(0,0,0,.2);
color: white;
font-size: 30px;
border: 0;
outline: none;
cursor: pointer;
z-index: 99;
}
button.next{
right: 0;
}
button.prev{
left: 0;
}
.slider-index{
position: absolute;
bottom: 10px;
left:250px;
z-index: 2; }
.slider-index span{
display: inline-block;
width: 10px;
height: 10px;
border: 2px solid red;
border-radius: 50%;
}
.slider-index span.active{
background-color: orange;
} </style>
</head>
<body>
<div class="slider-list">
<div class="slider-wrapper">
<ul> </ul>
</div>
<button class="next">></button>
<button class="prev"><</button>
<div class="slider-index">
<span class="active"></span>
<span></span>
<span></span>
<span></span>
<span></span>
</div>
</div>
<script type="text/javascript" src="../jquery-3.3.1.min.js"></script>
<script type="text/javascript"> $(function(){
// 1.获取本地图片数据 590*470
let imgArr = ['./5.jpg','./1.jpg','./2.jpg','./3.jpg','./4.jpg','./5.jpg','./1.jpg']; // 获取图片的宽度
let imgWidth = 590;
let len = $('span').length; // 2.遍历数据 将图片添加到ul中
for(let i = 0;i < imgArr.length;i++){
let width = i*imgWidth;
$(`<li>
<a href="javascript:;">
<img src=${imgArr[i]} alt=${i}>
</a>
</li>`).appendTo('.slider-wrapper ul').addClass('slider-item') }
// 设置图片的类名
$('img').addClass('focus-img');
// 设置父盒子的总宽度
$('.slider-wrapper').width((imgArr.length+1)*imgWidth);
$('.slider-wrapper ul').width((imgArr.length+1)*imgWidth);
// 初始化
// 默认显示第一张图片
init();
function init(){
$("ul").css("left",-imgWidth);
}
// 下一张
$('button.next').click(function(event) {
next();
}); // 控制图片显示第几张
let count = 1;
function next(){ if (count ===len+1) {
count = 2;
$("ul").css("left",-imgWidth);
}else{
count++;
}
$('.slider-wrapper ul').stop().animate({left:-count*imgWidth},200);
// 控制轮播图索引改变颜色
if (count>len) {
$("span").eq(0).addClass("active").siblings("span").removeClass("active");
}else{ $("span").eq(count-1).addClass("active").siblings("span").removeClass("active");
} }
// 给小圆圈添加点击事件
$('span').click(function(){
//自己的样式
$(this).addClass("active").siblings("span").removeClass("active");
count = $(this).index()+1;
$("ul").animate({"left":-count*imgWidth},200);
});
setInterval(next,2000);
})
</script>
</body>
</html>

2、轮播二

<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style type="text/css">
*{margin: 0;padding: 0;}
ul,ol{ list-style: none;}
.wrapper{
width: 580px;
height: 240px;
margin: 100px auto;
/*overflow: hidden;*/
position: relative;
}
.wrapper ul{
width: 100%;
height: 240px;
overflow: hidden; }
.wrapper ul li{
float: left;
width: 580px;
height: 240px;
}
ol{
position: absolute;
right: 0;
bottom: 10px;
width: 190px;
}
ol li{
float: left;
width: 20px;
height: 20px;
margin: 0 5px;
text-align: center;
border-radius: 50%;
cursor: pointer;
background-color: #abc;
}
ol li.current{
background-color: pink;
}
</style>
<script type="text/javascript" src="../jquery-3.3.1.min.js"></script>
<script type="text/javascript">
$(function () {
// 根据ol下li的索引号,匹配ul下相对应li的索引号
$(".wrapper ol li").mouseenter(function () {
$(this).addClass("current").siblings().removeClass("current");
$(".wrapper ul li").eq($(this).index()).stop().fadeIn("fast").siblings().stop().fadeOut();
});
});
</script>
</head>
<body>
<div class="wrapper">
<ul>
<li><img src="./1.png" alt=""/></li>
<li><img src="./2.png" alt=""/></li>
<li><img src="./3.png" alt=""/></li>
<li><img src="./4.png" alt=""/></li>
<li><img src="./5.png" alt=""/></li>
</ul>
<ol>
<li class="current">1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ol>
</div>
</body>
</html>

jQuery系列(十三):实现轮播的更多相关文章

  1. jQuery轻量级京东图片轮播代码等

    http://sc.chinaz.com/jiaoben/jiaodiantu.html jQuery轻量级京东图片轮播代码   查看全图点击预览 顶(17)踩(4)报错评论(0)下载地址 更新时间: ...

  2. 使用javascript,jquery实现的图片轮播功能

    使用javascript,jquery实现的图片轮播功能本功能采用最基础的javascript和一些简单的jquery技术实现,易理解,以修改使用,代码简易,适合刚开始接触到网站开发的朋友们参考.可以 ...

  3. jQuery实现todo及轮播图

    内容: 1.todo程序 2.轮播图 1.todo程序 需求: 实现一个todo程序,可以添加数据,可以删除数据,可以修改数据,可以查看所有数据 另外实现自己的一系列弹窗:用于提示用户的提示框.用于警 ...

  4. 纯javaScript、jQuery实现个性化图片轮播

    纯javaScript实现个性化图片轮播 轮播原理说明<如上图所示>: 1. 画布部分(可视区域)属性说明:overflow:hidden使得超出画布部分隐藏或说不可见.position: ...

  5. jQuery美女幻灯相册轮播源代码

    体验效果:http://hovertree.com/texiao/jquery/ 本幻灯片包含小图列表和大图轮播,包含图片标题和详细介绍,详细介绍字数可以很多,每张图片包含链接,可以实现跳转 HTML ...

  6. JQuery slidebox实现图片轮播

    jQuery图片轮播(焦点图)插件jquery.slideBox,简单设置下参数就可以多个多种动画效果,左右,上下,速度,还可指定默认显示第N张,点击的按钮在现代浏览中可以实现圆形或圆角效果,插件代码 ...

  7. jQuery淡入淡出效果轮播图

    用JavaScript做了平滑切换的焦点轮播图之后,用jQuery写了个简单的淡入淡出的轮播图,代码没有做优化,html结构稍微有一些调整,图片部分用ul替换了之前用的div. html结构如下: & ...

  8. JQuery插件之图片轮播插件–slideBox

    来源:http://www.ido321.com/852.html 今天偶然发现了一个比较好用的图片轮播插件—slideBox 先看看效果:http://slidebox.sinaapp.com/ 代 ...

  9. jquery手写焦点轮播图-------解决最后一张无缝跳转第一张的问题

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. 基于jQuery的图片左右轮播,基本原理通用

    毕竟新人,写点基础的小东西,希望能和大家沟通交流,提高自己的水平. 这个是应用较多的轮播部分,希望能和大家分享一下思路,拓宽视野. 话不多说,上内容. 我的思路很简单就是通过判断index值的大小变化 ...

随机推荐

  1. Python 第二式

    @Codewars Python练习 question ** Simple transposition ** Simple transposition is a basic and simple cr ...

  2. linux学习笔记(1) -- 关于命令的一些操作

    Linux 目录 /:根目录,一般根目录下只存放目录,在Linux下有且只有一个根目录.所有的东西都是从这里开始.当你在终端里输入“/home”,你其实是在告诉电脑,先从/(根目录)开始,再进入到ho ...

  3. 怎样查看 MySQL 版本号

    1. 在命令行中直接查看版本号 mysql -V 2. 在 mysql --help 中查找与版本相关的信息 mysql --help | grep Ver 3. 在mysql命令行里面查看版本信息 ...

  4. vue开发中利用正则限制input框的输入(手机号、非0开头的正整数等)

    我们在前端开发中经常会碰到类似手机号输入获取验证码的情况,通常情况下手机号的输入需要只能输入11位的整数数字.并且需要过滤掉一些明显不符合手机号格式的输入,那么我们就需要用户在输入的时候就控制可以输入 ...

  5. Scala学习二十一——隐式转换和隐式参数

    一.本章要点 隐式转换用于类型之间的转换 必须引入隐式转换,并确保它们可以以单个标识符的形式出现在当前作用域 隐式参数列表会要求指定类型的对象.它们可以从当前作用域中以单个标识符定义的隐式对象的获取, ...

  6. django+uwsgi+nginx: websock 报502/400

    耽搁了近2个月,终于解决了,主要是nginx/uwsgi/django相关的配置: 一.django工程settings.py,添加 WEBSOCKET_FACTORY_CLASS = "d ...

  7. Oracle设置权限和还原数据库

    Oracle还原数据库 ,在最高权限账户上,先将安装好的数据上创建一个账户 -- Create the user create user newsafe identified by newsafe d ...

  8. C++ STL 之 容器的深拷贝和浅拷贝

    如果我们没有提供拷贝构造函数,没有重载=操作符,vector 对我们的 mc 对象进行的简单的浅拷贝,将拷贝的对象插入到容器中,导致我们的 mc 对象的 data 指针和容器中mc 对象的拷贝对象中的 ...

  9. HTTP中GET,POST和PUT的区别

    一.HTTP中定义了以下几种请求方法: 1.GET:2.POST:3.PUT:4.DELETE;5.HEAD:6.TRACE:7.OPTIONS: 二.各个方法介绍: 1.GET方法:对这个资源的查操 ...

  10. python 利用pyttsx3文字转语音(转)

    原文链接作者 # -*- coding: utf-8 -*- import pyttsx3 engine = pyttsx3.init() with open("all.txt", ...