练习:javascript轮播图效果
javascript轮播自动播放切换滑过停止,上一页/下一页
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>javascript焦点图</title>
<style>
*{margin:0;padding:0;}
li{list-style: none;}
#container{position:relative;width:680px;height:344px;overflow:hidden;margin:50px auto;font-size:13px;}
#container img{width:680px;height:344px;}
#tabs li{width:20px;height:20px;background:#000;color:#fff;float:left;margin-right:5px;text-align:center;line-height:20px;cursor: pointer;}
#tabs{position:absolute;right: 10px;bottom:10px;}
#tabs .active{background:#d75509;}
#arrow{left:5px;bottom:5px;position:absolute;}
#arrow span{width: 20px;height: 20px;display: inline-block;background: #000;color: #fff;text-align: center;cursor:pointer;}
#content div{width: 680px;height: 344px;display:none;}
#content .active{display:block;}
#container ul li.active {background:yellow;}
</style>
</head>
<body> <div id="container">
<ul id="tabs">
<li data-index ="0" class="active">1</li>
<li data-index ="1">2</li>
<li data-index ="2">3</li>
<li data-index ="3">4</li>
</ul>
<div id="content">
<div class="active"><img src="data:images/1.jpg" alt=""></div>
<div><img src="data:images/2.jpg" alt=""></div>
<div><img src="data:images/3.jpg" alt=""></div>
<div><img src="data:images/4.jpg" alt=""></div>
</div>
<div id="arrow">
<span><</span>
<span>></span>
</div>
</div>
<script>
var aLi = document.querySelectorAll('#tabs li');//arr,图索引
var oContainer = document.querySelector('#container');
var aDiv = document.querySelectorAll('#content div');
var aSpan = document.querySelectorAll('#arrow span');
var index=0;//上下图
var timer=null;
for(var i=0;i<aLi.length;i++){
//循环时就存索引,js中没有属性index,自定义的
aLi[i].index = i;
//进入onclick前for已经循环到4
aLi[i].onclick=function(){
index=this.index;
switchImg(this.index);
}
}
//图片切换函数
function switchImg(idx){
//去掉所有高亮
for(var j=0;j<aLi.length;j++){
aLi[j].className='';
aDiv[j].className='';
}
//this.index =this.getAttribute('data-index')//或在html中加入自定义索引data-index属性
aLi[idx].className='active';
aDiv[idx].className='active';
} //切换右测图片<
aSpan[0].onclick=function(){
index--;
if(index<0){
index=aLi.length-1;
}
switchImg(index);
}
//>
aSpan[1].onclick=function(){
index++;
if(index==aLi.length){
index=0;
}
switchImg(index);
}
//自动播放,调用点击>事件
timer = setInterval(function(){
aSpan[1].onclick();
},1000) oContainer.onmouseover = function(){
clearInterval(timer);
timer =null;
}
oContainer.onmouseout = function(){
timer = setInterval(function(){
aSpan[1].onclick();
},1000)
}
</script>
</body>
</html>
练习:javascript轮播图效果的更多相关文章
- JavaScript实现轮播图效果
我又来了,同志们.老想你们了 捕获小可爱一枚. 下面进入正题:用JavaScript原生代码写轮播图效果. 具体效果就不多说了,网站上面的轮播效果我们都知晓.下面是展示代码 html代码: <d ...
- 云南农职《JavaScript交互式网页设计》 综合机试试卷②——实现轮播图效果
一.语言和环境 实现语言:HTML,CSS,JavaScript,JQuery. 开发环境:HBuilder. 二.题目(100分): 使用JQuery淡入淡出动画,实现轮播图效果 每隔2秒钟切换一张 ...
- HTML+CSS+Javascript实现轮播图效果
HTML+CSS+Javascript实现轮播图效果 注意:根据自己图片大小来更改轮播图大小. <!doctype html> <html> <head> < ...
- js实现轮播图效果(附源码)--原生js的应用
1.js实现轮播图效果 <!DOCTYPE html><html lang="en"><head> <meta charset=" ...
- 纯CSS实现轮播图效果,你不知道的CSS3黑科技
前言 轮播图已经是一个很常见的东西,尤其是在各大App的首页顶部栏,经常会轮番显示不同的图片. 一提到轮播图如何实现时,很多人的第一反应就是使用Javascript的定时器,当然这种方法是可以实现的. ...
- 高仿阴阳师官网轮播图效果的jQuery插件
代码地址如下:http://www.demodashi.com/demo/12302.html 插件介绍 这是一个根据阴阳师官网的轮播效果所扒下来的轮播插件,主要应用于定制个性化场景,目前源码完全公开 ...
- 用html +js+css 实现页面轮播图效果
html 页面 <html lang="en"> <head> <meta charset="UTF-8"> <met ...
- 小程序实践(二):swiper组件实现轮播图效果
swiper组件类似于Android中的ViewPager,实现类似轮播图的效果,相对于Android的Viewpager,swiper实现起来更加方便,快捷. 效果图: 首先看下swiper支持的属 ...
- Android项目实战(四十七):轮播图效果Viewpager
简易.常用的轮播图效果ViewPager ,老技术了,记一笔留着以后ctrl C + ctrl V 需求如下: 不定张个数的ImagView轮播,右下角显示轮播点图标,每隔固定时间切换下一张,最 ...
随机推荐
- Spark RDD持久化、广播变量和累加器
Spark RDD持久化 RDD持久化工作原理 Spark非常重要的一个功能特性就是可以将RDD持久化在内存中.当对RDD执行持久化操作时,每个节点都会将自己操作的RDD的partition持久化到内 ...
- Koa 框架介绍
Node.js 是一个异步的世界,官方 API 支持的都是 callback 形式的异步编程模型,这 会带来许多问题,例如:callback 嵌套问题 ,异步函数中可能同步调用 callback 返回 ...
- MySQL之视图、触发器、事务、存储过程、函数
一 视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,可以将该结果集当做表来使用. 使用视图我们可以把查询过程中的 ...
- 二维数组中的查找[by Python]
题目:在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. ...
- volatile分析
volatile三大特性: 1. 内存可见性 2.不保证原子性 3. 禁止重排序内存屏障的概念:memory barrier是一个CPU指令.指令逻辑:a.确保一些特定操作执行顺序 b.影响一些数据的 ...
- Thread类的其他方法,同步锁,死锁与递归锁,信号量,事件,条件,定时器,队列,Python标准模块--concurrent.futures
参考博客: https://www.cnblogs.com/xiao987334176/p/9046028.html 线程简述 什么是线程?线程是cpu调度的最小单位进程是资源分配的最小单位 进程和线 ...
- c++ cout、cin、endl
cout是标准输出流对象,<<是输出操作符:cin是标准输入流对象,>>是输入操作符:endl是换行符操作符.他们都属于C++标准库,所以都在std的名字空间里.所以要在开头写 ...
- 区块链代币(Token)笔记 — — 术语
前言 接触区块链和数字货币差不多有大半年时间,一直在赶项目进度,现在有空整理补习一下相关的知识,只谈代币不谈区块链
- codeforces gym #102082C Emergency Evacuation(贪心Orz)
题目链接: https://codeforces.com/gym/102082 题意: 在一个客车里面有$r$排座位,每排座位有$2s$个座位,中间一条走廊 有$p$个人在车内,求出所有人走出客车的最 ...
- 计算机网络基础知识-OSI七层协议模型
一.物理层 物理层主要规定了物理设备的标准,如网线的类型.光纤的接口类型.各种传输介质的传输速率,物理层的数据以比特流(二进制)的形式存在,传输时将比特流转化为电流强弱,达到目的地之后再转化为比特流. ...