练习: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轮播,右下角显示轮播点图标,每隔固定时间切换下一张,最 ...
随机推荐
- idea怎么配置spring
前提基础: 1.idea软件并JDK成功能用 2.有tacate,并会导入. 3.了解jsp和mvc基本结构 详细介绍: https://www.cnblogs.com/wormday/p/84356 ...
- JSP七大动作
- C# for循环或者foreach往List中添加对象的时候前面的数据总被最后加入的覆盖
昨天我旁边小姐姐遇到一个问题,就是在执行for循环往list添加数据的时候,前面的数据信息总是被后面的数据信息所覆盖. 这样编写就会造成这样的数据效果:(所有的数据都会被覆盖) 问题原因:对 ...
- python之json模块
#!/usr/bin/python # -*- coding: UTF- -*- ''' )序列化相关 json pickle (序列化是指将) 序列化是指将一个字符串转换成基础数据类型或者基础数据类 ...
- 一人撸PaaS之“应用”
[什么是“应用”] 应用,如果按名词理解就是类似于可以使用的功能,比如一个App应用.事实上,一个应用包含了大量的交互功能以丰富我们的日常学习和生活. 我们这里的应用指的是一系列功能的集合,可以理解为 ...
- __init__和__new__的区别
根据官方文档: __init__是当实例对象创建完成后被调用的,然后设置对象属性的一些初始值. __new__是在实例创建之前被调用的,因为它的任务就是创建实例然后返回该实例,是个静态方法. 也 ...
- MySQL CONCAT opposite
csv - What is the opposite of GROUP_CONCAT in MySQL? - Stack Overflowhttps://stackoverflow.com/quest ...
- 六、Java多人博客系统-2.0版本-代码实现
1.前后端分离,后端使用spring boot,只负责提供数据,对外暴露Restful API.前端使用vue,只负责展示数据和向后台提交数据. 2.数据库使用mariadb,存储所有数据. 3.前端 ...
- 【51NOD1847】奇怪的数学题 min_25筛
题目描述 记\(sgcd(i,j)\)为\(i,j\)的次大公约数. 给你\(n\),求 \[ \sum_{i=1}^n\sum_{j=1}^n{sgcd(i,j)}^k \] 对\(2^{32}\) ...
- mysql数据去重并排序使用distinct 和 order by 的问题
比如直接使用: SELECT distinct mobileFROM table_aWHERE code = 123ORDER BY a_ime desc 在本地mysql数据库没有错,在线上的数据库 ...