js原生轮播
js原生轮播
今天用js做了轮播图,做的不怎么好,希望大家能够看懂。
效果:
1.鼠标放在轮播图上自动停止
2.鼠标离开轮播图自动播放
3.鼠标点击轮播图上的小圆点跳转到相应的图上。
代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>js轮播</title>
<style type="text/css" media="screen">
*{margin: 0;padding: 0;}
body{width: 100%}
ul{width: 100%;height: 500px;list-style: none;position: relative;overflow: hidden}
ul li {float: left;width: 100%;height: 100%;position: absolute;top: 0;left: 0;text-align: center;line-height: 500px;font-size: 40px;font-weight: bold;background: red;z-index: 0;opacity: 0}
ul li:nth-child(2){background: yellow}
ul li:nth-child(3){background: pink}
.anbox{position: absolute;z-index: 999;left: 50%;top: 90%;transform: translate(-50%, 0);}
.an{width: 20px;height: 20px;background: white;float: left;margin-left: 20px;border-radius: 50%;opacity: 0.6}
.an:nth-child(1){margin: 0;}
</style>
</head>
<body>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<div class="anbox">
<div class="an"></div>
<div class="an"></div>
<div class="an"></div>
</div>
</ul>
<script src="js/c.js"></script>
<script>
$tag('body')[0].onload = aa;
var yuans = $class('an');
var lis = $tag('li');
var ul = $tag('ul')[0];
var b = 1;//控制图片和小圆点的下标值; // 轮播
function aa(){
reset();
lis[b-1].style.zIndex = b;
lis[b-1].style.transition = 1+'s';
lis[b-1].style.opacity = 1;
yuans[b-1].style.background = $random255();
yuans[b-1].style.opacity = 1;
b++;
if(b==lis.length+1){//重置b值
b=1;
}
}
// 鼠标放上去
var time =setInterval(aa,2000);
ul.onmousemove = ting;
function ting(){
clearInterval(time);
}
ul.onmouseout = function(){
ting = null;
time =setInterval(aa,2000);
} //鼠标放在小圆点的时候
for(var x=0;x<yuans.length;x++){
yuans[x].onclick = yuan;
yuans[x].value = x;
}
function yuan(){
var i = this.value;
reset();
lis[i].style.zIndex =4;
lis[i].style.opacity = 1;
yuans[i].style.background = $random255();
} //点击上一个或者下一个
var page = $class('tag');
for(var x of page){
x.onclick = pages;
}
function pages(){
if(this.id == 'left'){
font();
}
}
function reset(){ //小圆点和图全部还原
for(var j=0;j<lis.length;j++){
lis[j].style.zIndex = 0;
lis[j].style.opacity = 0;
yuans[j].style.background = "white";
yuans[j].style.opacity = 0.6;
}
}
</script>
</body>
</html>
轮播就到这里了,里面还有自己封装的函数,就使用了标签,类名,id获取。
js原生轮播的更多相关文章
- js原生轮播图
轮播图是新手学前端的必经之路! 直接上代码! <!DOCTYPE html><html lang="en"><head> <meta ch ...
- js 原生轮播图插件
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 小白之js原生轮播图
html: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
- Js原生轮播-直接上代码
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&qu ...
- 原生js焦点轮播图
原生js焦点轮播图主要注意这几点: 1.前后按钮实现切换,同时注意辅助图2.中间的button随着前后按钮对应切换,同时按button也能跳转到相应的index3.间隔调用与无限轮播.4.注意在动画时 ...
- 原生js实现轮播图
原生js实现轮播图 很多网站上都有轮播图,但找到一个系统讲解的却很难,因此这里做一个简单的介绍,希望大家都能有所收获,如果有哪些不正确的地方,希望大家可以指出. 原理: 将一些图片在一行中平铺,然后计 ...
- 封装一个简单的原生js焦点轮播图插件
轮播图实现的效果为,鼠标移入左右箭头会出现,可以点击切换图片,下面的小圆点会跟随,可以循环播放(为了方便理解,没有补2张图做无缝轮播).本篇文章的主要目的是分享封装插件的思路. 轮播图我一开始是写成非 ...
- 原生JS实现轮播图的效果
原生JS实现轮播图的效果: 只要缕清了全局变量index的作用,这个轮播图也就比较容易实现了:另外,为了实现轮这个效果,有几处clearInterval()必须写上.废话不多说,直接上代码,修复了几个 ...
- 使用原生js将轮播图组件化
代码地址如下:http://www.demodashi.com/demo/11316.html 这是一个轮播图组件,这里是代码地址,需要传入容器的id和图片地址,支持Internet Explor ...
随机推荐
- spring-IOC容器(一)
ApplicationContext 代表IOC容器(控制反转) ApplicationContext的主要实现类: ——ClassPathXmlApplicationContext:从类路径下加载配 ...
- pyhanlp 中文词性标注与分词简介
pyhanlp 中文词性标注与分词简介 pyhanlp实现的分词器有很多,同时pyhanlp获取hanlp中分词器也有两种方式 第一种是直接从封装好的hanlp类中获取,这种获取方式一共可以获取五种分 ...
- jpa随笔
1对多的关系 //多的一方@Entity @Table(name="car_distribute") public class DistributeCar extends Cust ...
- 【python】序列化和反序列化
序列化可以理解为:把python的对象编码转换为json格式的字符串,反序列化可以理解为:把json格式字符串解码为python数据对象.在python的标准库中,专门提供了json库与pickle库 ...
- FIFO IP核仿真
FIFO IP核仿真 1.FIFO IP核配置 2.FIFO测试逻辑代码 首先往FIFO里面写入512个数据(FIFO深度的一半),然后再开始同时往FIFO里面写入,读出数据.FIFO读和写的时钟域不 ...
- Python实例讲解 -- wxpython 基本的控件 (按钮)
使用按钮工作 在wxPython 中有很多不同类型的按钮.这一节,我们将讨论文本按钮.位图按钮.开关按钮(toggle buttons )和通用(generic )按钮. 如何生成一个按钮? 在第一部 ...
- HTTP协议之chunk介绍
http chunked 当客户端向服务器请求一个静态页面或者一张图片时,服务器可以很清楚的知道内容大小,然后通过Content-Length消息首部字段告诉客户端需要接收多少数据.但是如果是动态页面 ...
- Python关于self用法重点分析
在介绍Python的self用法之前,先来介绍下Python中的类和实例…… 我们知道,面向对象最重要的概念就是类(class)和实例(instance),类是抽象的模板,比如学生这个抽象的事物,可以 ...
- Java第02次实验提纲(Java基本语法与类库)
1. 熟悉Git 1.1 学会使用网页版的操作代码仓库(gitee) 申请账号,然后根据老师提供的链接或者二维码加入团队,然后修改昵称. fork老师提供的代码库项目,新建自己学号命名的文件并上传一些 ...
- js copy数组 对象
js copy数组 slice concat 浅拷贝 copy 对象 Object.assign({},obj); es6 ie要用babel转 暴力copy 用JSON.parse(JSON. ...