JS编写兼容IE6,7,8浏览器无缝自动轮播


Posted in Javascript onOctober 12, 2018

JS编写兼容IE6,7,8浏览器无缝自动轮播

项目要求页面兼容IE6,7,8等浏览器,我们可能会遇到这个轮播效果,轮播板块要求:无限循环、自动轮播和手动切换功能,每一次滚动一小格,网上有很多这类插件,例如:swiper等!

但是很多都是不兼容IE6,7,8这些低级浏览器的,没有办法,只能自己写一个类似的轮播插件

废话不多说,直接上代码:

<!DOCTYPE html>
<html>
 <head>
  <meta charset="UTF-8">
  <title></title>
  <script type="text/javascript" src="js/jquery-1.8.3-20180801.min.js"></script>
  <style>
   *{margin: 0;padding: 0;}
   div{position: relative;width: 1000px;overflow: hidden;height: 100px;line-height:100px;}
   ul{position: absolute;list-style: none;overflow: hidden;}
   li{float: left;width: 200px;height: 100px;text-align:center;color:#fff;}
   a{position: absolute;color:#fff;margin:0 10px;font-size:30px;text-decoration:none;}
  </style>
 </head>
 <body>
  <div>
   <ul>
    <li style="background: red;">1</li>
    <li style="background: yellow;">2</li>
    <li style="background: blue;">3</li>
    <li style="background: black;">4</li>
    <li style="background: green;">5</li>
    <li style="background: orange;">6</li>
    <li style="background: skyblue;">7</li>
    <li style="background: blue;">8</li>
    <li style="background: green;">9</li>
    <li style="background: orange;">10</li>
    <li style="background: skyblue;">11</li>
   </ul>
   <a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" class="prev" style="left:0px;">←</a>
   <a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" class="next" style="right:0px;">→</a>
  </div> 
 </body>
 <script type="text/javascript">
  var fli = $("ul li").clone(true);
  var oul = $("ul");
  oul.append(fli);
  oul.width($("ul li").eq(0).width()*$("ul li").length);
  var inow = 0;
  var timer = null;
   
  $("div").mouseover(function(){
   clearInterval(timer);
  })
  $("div").mouseout(function(){
   autoplay();
  })
   
  $(".next").click(function(){
   if(inow == $("ul li").length/2){
    oul.css("left","0px");
    inow = 1;
   }else{
    inow++;
   }
   var leng = -inow*$("ul li").eq(0).width()+"px"; 
   oul.animate({"left":leng});
  })
  $(".prev").click(function(){
   if(inow == 0){
    var ml = -$("ul li").eq(0).width()*($("ul li").length/2)+"px";
    oul.css("left",ml);
    inow = $("ul li").length/2-1;
   }else{
    inow--;
   }
   var leng = -inow*$("ul li").eq(0).width()+"px";
   oul.animate({"left":leng});
  })
  function autoplay(){
    timer = setInterval(function(){
    if(inow == $("ul li").length/2){
     oul.css("left","0px");
     inow = 1;
    }else{
     inow++;
    }
    console.log(inow);
    var leng = -inow*$("ul li").eq(0).width()+"px";
    oul.animate({"left":leng});
   },2000);
  }
  autoplay();
 </script>
</html>

希望这篇文章能帮到大家,喜欢技术交流的可以关注我,一起交流前端技术。感谢大家对三水点靠木的支持。

Javascript 相关文章推荐
jQuery 位置函数offset,innerWidth,innerHeight,outerWidth,outerHeight,scrollTop,scrollLeft
Mar 23 Javascript
JavaScript使用replace函数替换字符串的方法
Apr 06 Javascript
javascript使用输出语句实现网页特效代码
Aug 06 Javascript
javascript中的3种继承实现方法
Jan 27 Javascript
JavaScript数组操作函数汇总
Aug 05 Javascript
超全面的vue.js使用总结
Feb 12 Javascript
jQuery倒计时代码(超简单)
Feb 27 Javascript
浅谈js for循环输出i为同一值的问题
Mar 01 Javascript
解决angularjs中同步执行http请求的方法
Aug 13 Javascript
jQuery实现高级检索功能
May 28 jQuery
js使用文件流下载csv文件的实现方法
Jul 15 Javascript
JavaScript parseInt0.0000005打印5原理解析
Jul 23 Javascript
Vue cli3 库模式搭建组件库并发布到 npm的流程
Oct 12 #Javascript
详解vue服务端渲染浏览器端缓存(keep-alive)
Oct 12 #Javascript
webpack4与babel配合使es6代码可运行于低版本浏览器的方法
Oct 12 #Javascript
在JS循环中使用async/await的方法
Oct 12 #Javascript
代码实例ajax实现点击加载更多数据图片
Oct 12 #Javascript
vue项目环境变量配置的实现方法
Oct 12 #Javascript
原生JS实现自定义下拉单选选择框功能
Oct 12 #Javascript
You might like
PHP与C#分别格式化文件大小的代码
2011/05/14 PHP
php对大文件进行读取操作的实现代码
2013/01/23 PHP
Yii2增加验证码步骤详解
2016/04/25 PHP
PHP实现的简单分页类及用法示例
2016/05/06 PHP
PHP将身份证正反面两张照片合成一张图片的代码
2017/04/08 PHP
利用Laravel生成Gravatar头像地址的优雅方法
2017/12/30 PHP
Laravel源码解析之路由的使用和示例详解
2018/09/27 PHP
PHP全局使用Laravel辅助函数dd
2019/12/26 PHP
javascript hasFocus使用实例
2010/06/29 Javascript
自己用jQuery写了一个图片的马赛克消失效果
2014/05/04 Javascript
常用jQuery选择器总结
2014/07/11 Javascript
浅谈javascript的分号的使用
2015/05/12 Javascript
Javascript对象Clone实例分析
2015/06/09 Javascript
jquery模拟alert的弹窗插件
2015/07/31 Javascript
jQuery实现可用于博客的动态滑动菜单完整实例
2015/09/17 Javascript
基于复选框demo(分享)
2017/09/27 Javascript
微信小程序实现预览图片功能
2020/10/22 Javascript
JS实现的碰撞检测与周期移动完整示例
2019/09/02 Javascript
JavaScript实现猜数字游戏
2020/05/20 Javascript
vue实现循环滚动列表
2020/06/30 Javascript
JavaScript实现多文件下载方法解析
2020/08/07 Javascript
Vue基于localStorage存储信息代码实例
2020/11/16 Javascript
聊聊vue 中的v-on参数问题
2021/01/29 Vue.js
Python基于sftp及rsa密匙实现远程拷贝文件的方法
2016/09/21 Python
Python学习小技巧之列表项的拼接
2017/05/20 Python
对python3.4 字符串转16进制的实例详解
2019/06/12 Python
Python 200行代码实现一个滑动验证码过程详解
2019/07/11 Python
python flask中动态URL规则详解
2019/11/22 Python
Python如何读写CSV文件
2020/08/13 Python
python爬虫构建代理ip池抓取数据库的示例代码
2020/09/22 Python
安全资金保障制度
2014/01/23 职场文书
2014学习全国两会精神心得体会2000字
2014/03/11 职场文书
2014年党员学习“三严三实”思想汇报
2014/09/15 职场文书
2019教师的学习计划
2019/06/25 职场文书
Golang 实现超大文件读取的两种方法
2021/04/27 Golang
详解Flask开发技巧之异常处理
2021/06/15 Python