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 相关文章推荐
JS+flash实现chrome和ie浏览器下同时可以复制粘贴
Sep 22 Javascript
onkeyup,onkeydown和onkeypress的区别介绍
Oct 21 Javascript
深入理解Javascript中的循环优化
Nov 09 Javascript
调用DOM对象的focus使文本框获得焦点
Feb 19 Javascript
JavaScript中的DSL元编程介绍
Mar 15 Javascript
JavaScript获取DOM元素的11种方法总结
Apr 25 Javascript
WordPress 单页面上一页下一页的实现方法【附代码】
Mar 10 Javascript
微信小程序模板和模块化用法实例分析
Nov 28 Javascript
JavaScript实现元素滚动条到达一定位置循环追加内容
Dec 28 Javascript
解决vue中对象属性改变视图不更新的问题
Feb 23 Javascript
微信小程序与公众号实现数据互通的方法
Jul 25 Javascript
微信小程序使用 vant Dialog组件的正确方式
Feb 21 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_screw 1.5:php加密: 安装与使用详解
2013/06/20 PHP
smarty内置函数section的用法
2015/01/22 PHP
PHP里面把16进制的图片数据显示在html的img标签上(实现方法)
2017/05/02 PHP
Smarty模板配置实例简析
2019/07/20 PHP
thinkphp框架表单数组实现图片批量上传功能示例
2020/04/04 PHP
CCPry JS类库 代码
2009/10/30 Javascript
基于JQuery的日期联动实现代码
2011/02/24 Javascript
js鼠标滑轮滚动事件绑定的简单实例(兼容主流浏览器)
2014/01/14 Javascript
jquery列表拖动排列(由项目提取相当好用)
2014/06/17 Javascript
jQuery实现提示密码强度的代码
2015/07/15 Javascript
一种基于浏览器的自动小票机打印实现方案(js版)
2016/07/26 Javascript
微信小程序组件 marquee实例详解
2017/06/23 Javascript
Vue.js学习笔记之修饰符详解
2017/07/25 Javascript
jQuery实现可兼容IE6的淡入淡出效果告警提示功能示例
2017/09/20 jQuery
详解基于DllPlugin和DllReferencePlugin的webpack构建优化
2018/06/28 Javascript
React组件对子组件children进行加强的方法
2019/06/23 Javascript
bootstrap Table实现合并相同行
2019/07/19 Javascript
Nodejs实现图片上传、压缩预览、定时删除功能
2019/10/25 NodeJs
详解JavaScript原型与原型链
2020/11/16 Javascript
Django1.7+python 2.78+pycharm配置mysql数据库教程
2014/11/18 Python
Python实现调度算法代码详解
2017/12/01 Python
PyQt5每天必学之拖放事件
2020/08/27 Python
详解将Pandas中的DataFrame类型转换成Numpy中array类型的三种方法
2019/07/06 Python
Python split() 函数拆分字符串将字符串转化为列的方法
2019/07/16 Python
Django 权限认证(根据不同的用户,设置不同的显示和访问权限)
2019/07/24 Python
python爬取百度贴吧前1000页内容(requests库面向对象思想实现)
2019/08/10 Python
python 实现Flask中返回图片流给前端展示
2020/01/09 Python
Python中实现输入超时及如何通过变量获取变量名
2020/01/18 Python
Pyinstaller加密打包应用的示例代码
2020/06/11 Python
Burt’s Bees英国官网:世界领先的天然个人护理品牌
2020/08/17 全球购物
.NET初级开发工程师面试题(包括Javascript)
2012/08/22 面试题
思想品德自我鉴定
2013/10/12 职场文书
计算机系统管理员求职信
2014/06/20 职场文书
2015关于重阳节的演讲稿
2015/03/20 职场文书
《蜜蜂引路》教学反思
2016/02/22 职场文书
mysql sock文件存储了什么信息
2022/07/15 MySQL