js制作网站首页图片轮播特效代码


Posted in Javascript onAugust 30, 2016

本文实例为大家分享了使用js制作一般网站首页图片轮播效果的具体代码,供大家参考,具体内容如下

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>图片轮播</title>
 <style>
  .warp{
   width: 600px;
   height: 750px;
   position: relative;
   margin:30px auto 0;
   overflow: hidden;
  }
  #box{
   width: 600px;
   height: 750px;
   position: absolute;
   top: 0px;
   left: 0px;
   overflow: hidden;
   /*overflow-x:auto;*/
  }
  #box #con{
   width: 6000px;
   height: 750px;
   overflow: hidden;
  }
  #con img{
   float: left;
   width: 600px;
   height: 750px;
  }
  #btnL{
   position: absolute;
   left: 0px;
   top: 366px;
   width: 36px;
   height: 36px;
   background: url(images/btnL.png) 0 0 no-repeat;
   cursor: pointer;
  }
  #btnR{
   position: absolute;
   right: 0px;
   top: 366px;
   width: 36px;
   height: 36px;
   background: url(images/btnR.png) 0 0 no-repeat;
   cursor: pointer;
  }
  #num{
   position: absolute;
   bottom: 10px;
   left: 148px;
   overflow: hidden;
   list-style: none;
  }
  #num li{
   float: left;
   margin:0 5px;
   font-size: 16px;
   line-height: 25px;
   height: 25px;
   width: 25px;
   background: #ccc;
   text-align: center;
   cursor: pointer;
  }
  #num li.select{
   background-color: green;
   color: white;
  }
 </style>
</head>
<body>
 <div class="warp">
  <div id="box">
   <div id="con">
    <img src="images/meinv1.jpg" alt="">
    <img src="images/meinv2.jpg" alt="">
    <img src="images/meinv3.jpg" alt="">
    <img src="images/meinv4.jpg" alt="">
    <img src="images/meinv5.jpg" alt="">
    <img src="images/meinv6.jpg" alt="">
   </div>
  </div>
  <div id="btnL"></div>
  <div id="btnR"></div>
  <ul id="num">
   <li class="select">1</li>
   <li>2</li>
   <li>3</li>
   <li>4</li>
   <li>5</li>
   <li>6</li>
  </ul>
 </div>
 <script>
  var box=document.getElementById('box');
  var con=document.getElementById('con');
  var imgs=con.getElementsByTagName('img');
  var btnL=document.getElementById('btnL');
  var btnR=document.getElementById('btnR');
  var num=document.getElementById('num');
  var lis=num.getElementsByTagName('li');
  var timer1=null,timer2=null;
  var imgw=imgs[0].clientWidth;
  var x=0;
  function imgScroll(){//图片切换
   var start=box.scrollLeft;
   var end=imgw*x;
   var change=end-start;
   var minstep=0;
   var maxstep=30;
   var stepLength=change/maxstep;
    clearInterval(timer2);
    timer2=setInterval(function(){
     minstep++;
     // console.log(minstep);
     if (minstep>=maxstep) {
      clearInterval(timer2);
     }
     start+=stepLength;
     box.scrollLeft=start;
    },20) 
    for (var i = 0; i < lis.length; i++) {
     lis[i].className='none';
    }
    lis[x].className='select';
  }
  function move(){//默认向左每隔3s滚动
   clearInterval(timer1);
   timer1=setInterval(function(){
    x++;
    if (x>=imgs.length) {
     x=0;
    }
    imgScroll();
    for (var i = 0; i < lis.length; i++) {
     lis[i].className='none';
     lis[x].className='select';
    }
    },3000);
   }
  move();//启动默认滚动函数;
  btnR.onclick=function(){
   clearInterval(timer1);
   x++;
   if (x>=imgs.length) {
    x=0;
   }
   imgScroll();
   move();
  }
  btnL.onclick=function(){
   clearInterval(timer1);
   x--;
   if (x<0) {
    x=imgs.length-1;
   }
   imgScroll();
   move();
  }
  for (var i = 0; i < lis.length; i++) {
   lis[i].index=i;
   lis[i].onclick=function(){
    x=this.index;
    imgScroll();
    move();
   }
  }

 </script>
</body>
</html>

具体效果我是仿照hao123导航页面图片轮播的效果,大家可以去那个网站参考

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 类方法定义还是有点区别
Apr 15 Javascript
javascript 一段左右两边随屏滚动的代码
Jun 18 Javascript
IE bug table元素的innerHTML
Jan 11 Javascript
Javascript中的高阶函数介绍
Mar 15 Javascript
chrome浏览器当表单自动填充时如何去除浏览器自动添加的默认样式
Oct 09 Javascript
基于JavaScript实现类似于百度学术高级检索功能
Mar 02 Javascript
浅谈Vue下使用百度地图的简易方法
Mar 23 Javascript
react脚手架如何配置less和ant按需加载的方法步骤
Nov 28 Javascript
微信小程序select下拉框实现源码
Nov 08 Javascript
详解JavaScript作用域 闭包
Jul 29 Javascript
html中创建并调用vue组件的几种方法汇总
Nov 17 Javascript
javascript实现简单页面倒计时
Mar 02 Javascript
js实现简单的碰壁反弹效果
Aug 30 #Javascript
js控住DOM实现发布微博效果
Aug 30 #Javascript
AngularJS动态生成div的ID源码解析
Aug 29 #Javascript
jQuery弹出层后禁用底部滚动条(移动端关闭回到原位置)
Aug 29 #Javascript
快速移动鼠标触发问题及解决方法(ECharts外部调用保存为图片操作及工作流接线mouseenter和mouseleave)
Aug 29 #Javascript
浅谈JSON.stringify()和JOSN.parse()方法的不同
Aug 29 #Javascript
jQuery EasyUI编辑DataGrid用combobox实现多级联动
Aug 29 #Javascript
You might like
php获取从百度、谷歌等搜索引擎进入网站关键词的方法
2015/07/08 PHP
php简单判断文本编码的方法
2015/07/30 PHP
php模式设计之观察者模式应用实例分析
2019/09/25 PHP
PHP mkdir创建文件夹实现方法解析
2020/11/13 PHP
比较全面的event对像在IE与FF中的区别 推荐
2009/09/21 Javascript
js修改table中Td的值(定义td的双击事件)
2013/01/10 Javascript
深入了解javascript中的prototype与继承
2013/04/14 Javascript
兼容FF和IE的动态table示例自写
2013/10/21 Javascript
JS中把字符转成ASCII值的函数示例代码
2013/11/21 Javascript
html dom节点操作(获取/修改/添加或删除)
2014/01/23 Javascript
js获取微信版本号的方法
2015/05/12 Javascript
JavaScript模拟实现键盘打字效果
2015/06/29 Javascript
微信小程序 获取javascript 里的数据
2017/08/17 Javascript
Vue按需加载的具体实现
2017/12/02 Javascript
Vue中使用 setTimeout() setInterval()函数的问题
2018/09/13 Javascript
解决axios会发送两次请求,有个OPTIONS请求的问题
2018/10/25 Javascript
利用jsonp解决js读取本地json跨域的问题
2018/12/11 Javascript
Vue js 的生命周期(看了就懂)(推荐)
2019/03/29 Javascript
jQuery实现判断滚动条滚动到document底部的方法分析
2019/08/27 jQuery
Python模块包中__init__.py文件功能分析
2016/06/14 Python
tensorflow 1.0用CNN进行图像分类
2018/04/15 Python
解决python3捕获cx_oracle抛出的异常错误问题
2018/10/18 Python
在python中获取div的文本内容并和想定结果进行对比详解
2019/01/02 Python
python多线程下信号处理程序示例
2019/05/31 Python
pyqt 实现为长内容添加滑轮 scrollArea
2019/06/19 Python
Pandas时间序列:重采样及频率转换方式
2019/12/26 Python
美国汽配连锁巨头Pep Boys官网:轮胎更换、汽车维修服务和汽车零部件
2017/01/14 全球购物
美国指甲油品牌:Deco Miami
2017/01/30 全球购物
梅西百货澳大利亚:Macy’s Australia
2017/07/26 全球购物
CK澳大利亚官网:Calvin Klein澳大利亚
2020/12/12 全球购物
零件设计自荐信范文
2013/11/27 职场文书
高中军训感想300字
2014/03/04 职场文书
工程力学专业自荐信范文
2014/03/17 职场文书
因家庭原因离职的辞职信范文
2015/05/12 职场文书
利用 SQL Server 过滤索引提高查询语句的性能分析
2021/07/15 SQL Server
Python使用psutil库对系统数据进行采集监控的方法
2021/08/23 Python