HTML轮播(3)
前言
现在给轮播加上可视化的点,实际这样的轮播已经算完成的了
CSS
#LB {
width: 100%;
height: 948px;
overflow: hidden;
position:relative;
}
#LB ul {
width: 100%;
height: 100%;
}
#LB ul li {
padding:0;
margin:0;
width:100%;
height:100%;
}
#LB ul li img {
width:100%;
height:100%;
}
input {
display:block;
width:40%;
height:32px;
background:rgba(52, 162, 255, 0.64);
border:none;
color:#fff;
padding:0px 5px;
margin:auto;
}
#LB .lb_li {
position: absolute;
top: 50%;
right: 0px;
display: inline-block;
transform: translateY(-20%);
z-index: 2;
width: 3%;
height: 100%;
}
#LB .lb_li li {
width: 20px;
height: 20px;
border-radius: 50px;
border: 1px solid #fff;
margin:5px 0px;
}
.on {
background:#fff;
}
HTML
<div>
<div style="position:fixed;top:0px;left:0px;width:100%;display:flex;z-index:2;">
<input type="button" value="上一张" onclick="Back()" />
<input type="button" value="下一张" onclick="Next()" />
</div>
<div id="LB">
<ul class="lb_li">
<li class="on"></li>
<li></li>
<li></li>
</ul>
<ul class="lb_ul">
<li><img src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1554702318984&di=b4256edfa635b6e87ea43d336c6a1e39&imgtype=0&src=http%3A%2F%2Fpic.58pic.com%2F58pic%2F15%2F68%2F59%2F71X58PICNjx_1024.jpg" /></li>
<li><img src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1554702318984&di=b75fa0cf7e6c7ec2b84d6caa3c79bd54&imgtype=0&src=http%3A%2F%2Fpic24.nipic.com%2F20120906%2F2786001_082828452000_2.jpg" /></li>
<li><img src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1554702318984&di=7be7885e9826ed5397017dbc980cb108&imgtype=0&src=http%3A%2F%2Fpic75.nipic.com%2Ffile%2F20150821%2F9448607_145742365000_2.jpg" /></li>
<li><img src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1554702318984&di=b4256edfa635b6e87ea43d336c6a1e39&imgtype=0&src=http%3A%2F%2Fpic.58pic.com%2F58pic%2F15%2F68%2F59%2F71X58PICNjx_1024.jpg" /></li>
</ul>
</div>
</div>
JS
引用jq文件
<script src="~/Plugins/jquery-3.2.1.min.js"></script>
代码
var Speed = 3000;//时隔几秒切换一次
var AnimaSpeed = 1000;//动画速度
var index = 0;//索引
var LBI = setInterval(Carousel, Speed);//设置定时器
//下一张图片
function Back() {
if (index > 0) {
index -= 1;
SetAnimate();
} else {
index = $("#LB .lb_ul li").length - 1;
SetAnimate();
}
Ul_list(index);
clearInterval(LBI);//清除定时器
LBI = setInterval(Carousel, Speed);//启动定时器
}
//上一张图片
function Next() {
if (index < $("#LB .lb_ul li").length - 1) {
index += 1;
SetAnimate();
} else {
index = 0;
SetAnimate();
}
Ul_list(index);
clearInterval(LBI);//清除定时器
LBI = setInterval(Carousel, Speed);//启动定时器
}
//鼠标移入暂停
$("#LB").mouseenter(function () {
clearInterval(LBI);//清除定时器
})
//鼠标移出继续
$("#LB").mouseleave(function () {
LBI = setInterval(Carousel, Speed);//启动定时器
})
function Carousel() {
//最基础的轮播
if (index + 1 == $("#LB .lb_ul li").length) {
$("#LB .lb_ul").css("margin-top", "0px")
index = 0;
}
if (index < $("#LB .lb_ul li").length) {
index++;
Ul_list(index);
}
SetAnimate();
}
function SetAnimate() {
$("#LB .lb_ul").animate({
"margin-top": "" + (-$("#LB .lb_ul li").height() * index) + "px"
}, AnimaSpeed)
}
function Ul_list() {
$.each($(".lb_li").children(), function (i) {
$(".lb_li").children()[i].classList.remove("on");
})
if ($(".lb_li").children()[index] != undefined) {
$(".lb_li").children()[index].classList.add("on");
} else {
$(".lb_li").children()[0].classList.add("on");
}
}
效果

这样就完成了轮播
END
HTML轮播(3)的更多相关文章
- 踩石行动:ViewPager无限轮播的坑
2016-6-19 前言 View轮播效果在app中很常见,一想到左右滑动的效果就很容易想到使用ViewPager来实现.对于像我们常说的banner这样的效果,具备无限滑动的功能是可以用ViewPa ...
- 原生js+css3实现图片自动切换,图片轮播
运用CSS3transition及opacity属性 制作图片轮播动画 自己这两天根据用js来控制触发CSS3中transition属性,从而写出来的以CSS3动画为基础,js控制过程的图片轮播 运用 ...
- 纯javaScript、jQuery实现个性化图片轮播
纯javaScript实现个性化图片轮播 轮播原理说明<如上图所示>: 1. 画布部分(可视区域)属性说明:overflow:hidden使得超出画布部分隐藏或说不可见.position: ...
- jQuery个性化图片轮播效果
jQuery个性化图片轮播效果 购物产品展示:图片轮播器<效果如下所示> 思路说明: 每隔一段时间,实现图片的自动切换及选项卡选中效果,鼠标划入图片动画停止,划出或离开动画开始 两个区域: ...
- js 基础篇(点击事件轮播图的实现)
轮播图在以后的应用中还是比较常见的,不需要多少行代码就能实现.但是在只掌握了js基础知识的情况下,怎么来用较少的而且逻辑又简单的方法来实现呢?下面来分析下几种不同的做法: 1.利用位移的方法来实现 首 ...
- JS案例之2——cycle元素轮播
元素轮播效果是页面中经常会使用的一种效果.这个例子实现了通过元素的隐藏和显示来表现轮播效果.效果比较简单. 效果图如下: 源代码如下: <!DOCTYPE html> <html&g ...
- BootStrap_04之jQuery插件(导航、轮播)、以及Less
1.列偏移与列排序: ①列偏移:控制列出现的位置,某列偏移后,后序列会随之偏移--只能右偏移: col-lg/md/sm/xs-offset-*; ②列排序:控制某一列的位置,该列可以左(pull)右 ...
- iOS开发之三个Button实现图片无限轮播(参考手机淘宝,Swift版)
这两天使用Reveal工具查看"手机淘宝"App的UI层次时,发现其图片轮播使用了三个UIButton的复用来实现的图片循环无缝滚动.于是乎就有了今天这篇博客,看到“手机淘宝”这个 ...
- 原生JS实现"旋转木马"效果的图片轮播插件
一.写在最前面 最近都忙一些杂七杂八的事情,复习软考.研读经典...好像都好久没写过博客了... 我自己写过三个图片轮播,一个是简单的原生JS实现的,没有什么动画效果的,一个是结合JQuery实现的, ...
- 响应式图片菜单式轮播,兼容手机,平板,PC
昨天在给自己用bootstrap写一个响应式主业模版时想用一个图片轮播js,看到了bootstrap里面的unslider.js,只有1.7k,很小,很兴奋,但使用到最后发现不兼容手机,当分辨率变化的 ...
随机推荐
- Kubernetes K8S之Service服务详解与示例
K8S之Service概述与代理说明,并详解所有的service服务类型与示例 主机配置规划 服务器名称(hostname) 系统版本 配置 内网IP 外网IP(模拟) k8s-master Cent ...
- Boolean.valueOf(String)
Boolean.valueOf(String) a. 当 String 的参数值在不区分大小写的时候等于 "true" ,则 Boolean.valueOf(String) 返回值 ...
- python 进程(池)、线程(池)
进程.多进程.进程池 进程总概述 进程 from multiprocessing import Process import os # 子进程要执行的代码 def run_proc(name): pr ...
- [BJDCTF2020]EzPHP
[BJDCTF2020]EzPHP 解码:http://794983a5-f5dc-4a13-bc0b-ca7140ba23f3.node3.buuoj.cn/1nD3x.php 源代码: <? ...
- PyCharm2018.3.5下载和安装及永久破解详解(成功案例)
靓仔靓女,你是否在网上找了很多的方法都破解不了PyCharm,是有原因的!无论什么编程工具都不要下载近一到/两年内的版本,人家即把网上的一些破解方法修复了,而且还在测试阶段,不稳定就完事了我装的是20 ...
- SSRF漏洞(原理、漏洞利用、修复建议)
介绍SSRF漏洞 SSRF (Server-Side Request Forgery,服务器端请求伪造)是一种由攻击者构造请求,由服务端发起请求的安全漏洞.一般情况下,SSRF攻击的目标是外网无法访问 ...
- Android控件Gridivew列数行间距设定
常用属性 列数 android:numColumns="3" 行间距 android:verticalSpacing="8dp"
- Centos-强制将内存中数据写入磁盘-sync
sync 强制将内存中数据写入磁盘,以免数据丢失.在linux系统中,修改过的操作并不会立即写入磁盘,而是先写到内存中,通过buffer队列当达到指定时间或者指定大小再一次性写入磁盘,提高IO效率,正 ...
- GAN的理论 Theory behind GAN
任务:想要找到一个高维空间中的分布 P_data(x),要在目标类别的区域,采样的概率是高的:在那个区域之外,probability是低的.但这个P_data(x)分布的具体形式(pdf)是不知道的, ...
- 小伙伴想学Jenkins自动构建发布项目,我:安排上了!!
写在前面 趁着十一长假,很多小伙伴都在悄悄学习,有些是为了能够顺利通过面试,进入大厂升职加薪.有些则是为了进一步巩固和提高自己的专业技能,希望有朝一日能过成为互联网架构师乃至技术专家.这不,就有小伙伴 ...