JS实现的简单轮播图运动效果示例


Posted in Javascript onDecember 22, 2016

本文实例讲述了JS实现的简单轮播图运动效果。分享给大家供大家参考,具体如下:

<!DOCTYPE HTML>
<html>
<head>
 <meta http-equiv="content-type" charset="utf-8" />
  <meta http-equiv="content-type" content="text/html" />
  <title>demo</title>
</head>
<style type="text/css">
*{margin:0;padding:0;}
ul,li,img{margin:0;padding:0;border:0;list-style-type:none;}
#list{height:250px;list-style-type:none;overflow:hidden;}
#luanpo{max-width:600px;height:200px;border:1px solid #CCC;margin:0 auto;position:relative;overflow:hidden;}
#imgs li{float:left;height:200px;width:600px;}
#imgs{height:200px;background:#ddd;position:absolute;}
.a{background:red;}
.b{background:yellow;}
#num{overflow:auto;position:absolute;right:0;bottom:0;}
#num li{float:left;height:30px;width:30px;text-align:center;line-height:30px;border:1px solid #CCC;margin-left:10px;cursor:pointer;z-index:2222;}
</style>
<body>
  <div id="luanpo">
    <ul id="imgs">
      <li>a</li>
      <li>b</li>
      <li>c</li>
      <li>d</li>
    </ul>
    <ul id="num">
      <li class="a">1</li>
      <li class="b">2</li>
      <li class="b">3</li>
      <li class="b">4</li>
    </ul>
  </div>
<script type="text/javascript">
var imgs=document.getElementById('imgs').getElementsByTagName('li');
var nums=document.getElementById("num").getElementsByTagName("li");
var luanpo=document.getElementById("luanpo");
var oimg=document.getElementById('imgs');
var iNow=0;
var dt=null;
oimg.style.width=imgs.length*imgs[0].offsetWidth+"px";
function tab(){
for(var i=0;i<nums.length;i++){
  nums[i].index=i;
  nums[i].onclick=function(){
    clearInterval(dt);
    iNow=this.index;
    for(var i=0;i<nums.length;i++){
      nums[i].className="b";
    }
    this.className="a";
    oimg.style.left=-(imgs[0].offsetWidth*iNow)+"px";  //这边可以加上我前面所写的那个缓动框架
  }
  nums[i].onmouseout=function(){
      start();
  }
}
}
function start(){
clearInterval(dt);
  dt=setInterval(function(){
    if(iNow>nums.length-2){
    iNow=0;
    }else{
    iNow++;
    }
    for(var k=0;k<nums.length;k++){
      if(iNow==nums[k].index){nums[k].className='a';}else{nums[k].className='b';}
    }
    oimg.style.left=-(imgs[0].offsetWidth*iNow)+"px";  //这边可以加上我前面所写的那个缓动框架
  },3000);
  tab();
}
start();
</script>
</body>
</html>

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
jQuery学习2 选择器的使用说明
Feb 07 Javascript
javascript delete 使用示例代码
Mar 29 Javascript
JavaScript中使用构造函数实现继承的代码
Aug 12 Javascript
JavaScript中自定义事件用法分析
Dec 23 Javascript
jQuery中click事件用法实例
Dec 26 Javascript
关于JS中match() 和 exec() 返回值和属性的测试
Mar 21 Javascript
Backbone View 之间通信的三种方式
Aug 09 Javascript
JavaScript Ajax实现异步通信
Dec 14 Javascript
根据Bootstrap Paginator改写的js分页插件
Dec 25 Javascript
SVG描边动画
Feb 23 Javascript
在Vue组件上动态添加和删除属性方法
Feb 23 Javascript
微信小程序实现树莓派(raspberry pi)小车控制
Feb 12 Javascript
基于BootStrap与jQuery.validate实现表单提交校验功能
Dec 22 #Javascript
详解js的事件代理(委托)
Dec 22 #Javascript
HTML页面定时跳转方法解析(2种任选)
Dec 22 #Javascript
vue双向绑定的简单实现
Dec 22 #Javascript
jQuery使用Layer弹出层插件闪退问题
Dec 22 #Javascript
深入理解jquery中extend的实现
Dec 22 #Javascript
jQuery插件DataTable使用方法详解(.Net平台)
Dec 22 #Javascript
You might like
高亮度显示php源代码
2006/10/09 PHP
Php中文件下载功能实现超详细流程分析
2012/06/13 PHP
深入解析yii权限分级式访问控制的实现(非RBAC法)
2013/06/13 PHP
解决PhpMyAdmin中导入2M以上大文件限制的方法分享
2014/06/06 PHP
php的mssql数据库连接类实例
2014/11/28 PHP
PHP之正则表达式捕获组与非捕获组(详解)
2015/07/29 PHP
php获取文件后缀的9种方法
2016/03/22 PHP
php基于环形链表解决约瑟夫环问题示例
2017/11/07 PHP
10个实用的脚本代码工具
2010/05/04 Javascript
JS高级笔记
2011/07/13 Javascript
动态标签 悬停效果 延迟加载示例代码
2013/11/21 Javascript
查找Oracle高消耗语句的方法
2014/03/22 Javascript
JavaScript时间转换处理函数
2015/04/14 Javascript
jQuery EasyUI之DataGrid使用实例详解
2016/01/04 Javascript
JavaScript设计模式初探
2016/01/07 Javascript
Bootstrap嵌入jqGrid,使你的table牛逼起来
2016/05/05 Javascript
浅谈window.onbeforeunload() 事件调用ajax
2016/06/29 Javascript
Node.js + Redis Sorted Set实现任务队列
2016/09/19 Javascript
打造自己的jQuery插件入门教程
2016/09/23 Javascript
Bootstrap 下拉多选框插件Bootstrap Multiselect
2017/01/22 Javascript
js原生代码实现轮播图的实例讲解
2017/07/28 Javascript
vue中mint-ui的使用方法
2018/04/04 Javascript
解决vuecli3.0热更新失效的问题
2018/09/19 Javascript
js将URL网址转为16进制加密与解密函数
2020/03/04 Javascript
web.py在SAE中的Session问题解决方法(使用mysql存储)
2015/06/24 Python
Python入门教程之运算符与控制流
2016/08/17 Python
Python生成密码库功能示例
2017/05/23 Python
详解Django中间件的5种自定义方法
2018/07/26 Python
matplotlib.pyplot画图并导出保存的实例
2019/12/07 Python
美国温暖商店:The Warming Store
2018/12/15 全球购物
JVM是一个编译程序还是解释程序
2012/09/11 面试题
老公给老婆的保证书
2014/04/28 职场文书
最美护士演讲稿
2014/08/27 职场文书
房屋过户委托书范本
2014/10/07 职场文书
西双版纳导游词
2015/02/03 职场文书
护士自我推荐信范文
2015/03/24 职场文书