原生js实现旋转木马轮播图效果
网络编程 2021-07-04 19:20www.168986.cn编程入门
本文主要介绍了原生js实现旋转木马轮播图效果的实例,具有很好的参考价值,狼蚁网站SEO优化跟着长沙网络推广一起来看下吧
话不多说,请看代码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>旋转木马特效</title> <style type="text/css"> {margin: 0;padding: 0;list-style:none;} #demo{width:1200px;margin:100px auto 0;} #innerht{width:1200px;height:500px;position:relative;} ul li{position:absolute;:0;left:0;z-index:1;} ul li img{width:100%;} #corrow{position:absolute;width:100%;:50%;opacity:0;z-index:99;} #btn_lef,#btn_rig{position:absolute;height:112px;width:76px;:50%;margin-:-56px;} #btn_lef{left:0;} #btn_rig{right:0;} </style> </head> <body> <div id="demo"> <div id="innerht"> <ul> <li><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><img src="http://.qdfuns./misc.php?mod=attach&genre=editor&aid=dac666f84f6ad05ec026ad655ea0f159" alt=""></a></li> <li><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><img src="http://.qdfuns./misc.php?mod=attach&genre=editor&aid=89c2213f2b614db88b5724b82dafc02a" alt=""></a></li> <li><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><img src="http://.qdfuns./misc.php?mod=attach&genre=editor&aid=e7969486909c076abf795995bdc3da54" alt=""></a></li> <li><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><img src="http://.qdfuns./misc.php?mod=attach&genre=editor&aid=b404e53a3f4dd7e97438693e8e2d4082" alt=""></a></li> <li><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><img src="http://.qdfuns./misc.php?mod=attach&genre=editor&aid=ed309dded163d172b53154b2046eb1a2" alt=""></a></li> </ul> <div id="corrow"> <a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" id="btn_lef"><img src="http://.qdfuns./misc.php?mod=attach&genre=editor&aid=206927b03b97b194bc04cdcaf0e10a33" height="112" width="76" alt=""></a> <a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" id="btn_rig"><img src="http://.qdfuns./misc.php?mod=attach&genre=editor&aid=0e84253cdf667e293522a0a107eeec" height="112" width="76" alt=""></a> </div> </div> </div> </body> <script type="text/javascript"> (function(window){ function $(id){ return document.getElementById(id); }; //每张图片对应的样式 var tempArr = [ { "width":400, "":20, "left":50, "opacity":0.2, "zIndex":2 }, { "width":600, "":70, "left":0, "opacity":0.8, "zIndex":3 }, { "width":800, "":100, "left":200, "opacity":1, "zIndex":4 }, { "width":600, "":70, "left":600, "opacity":0.8, "zIndex":3 }, { "width":400, "":20, "left":750, "opacity":0.2, "zIndex":2 } ]; // 设置限流函数 var onOff = true ; // 获取对象 var left = $("btn_lef"),right = $("btn_rig"),innerht = $("innerht"),ul = innerht.children[0],lis = ul.children,arrow = $("corrow"); // 给每个li添加样式 addStyle(); // 大盒子的hover事件 innerht.onmouseover = function(){ animate(arrow,{"opacity":1}); }; innerht.onmouseout = function(){ animate(arrow,{"opacity":0}); }; // 右箭头点击事件 right.onclick = function(){ if( onOff ){ onOff = false; var a = tempArr.shift(); tempArr.push( a ); addStyle(); }; }; // 左箭头点击事件 left.onclick = function(){ if( onOff ){ onOff = false; var apop = tempArr.pop(); tempArr.unshift( apop ); addStyle(); }; }; function addStyle(){ for( i = 0 ; i < lis.length ; i++ ){ animate(lis[i],tempArr[i],function(){ onOff = true; console.log(onOff); }); }; }; // 设置animate函数 function animate(obj,json,fn){ clearInterval(obj.timer); obj.timer = setInterval(function(){ var flog = true ; for( k in json ){ if( k === "zIndex" ){ obj.style[k] = json[k]; }else if( k === "opacity" ){ var leader = getStyle(obj,k) 100 ; var target = json[k] 100 ; var step = ( target - leader ) / 10 ; step = step > 0 ? Math.ceil( step ) : Math.floor( step ) ; // 浮点数判断相等时是不准确的 // 所以不能写leader = ( leader + step )/100; // 保持leader和target都是整数,便于狼蚁网站SEO优化判断相等 leader = leader + step ; obj.style[k] = leader / 100; }else{ var leader = parseInt( getStyle(obj,k) ) || 0 ; var target = json[k]; var step = ( target - leader ) / 10 ; step = step > 0 ? Math.ceil( step ) : Math.floor( step ) ; leader = leader + step ; obj.style[k] = leader + "px"; }; if( leader !== target ){ flog = false ; }; }; console.log(flog); if( flog ){ clearInterval( obj.timer ); if( fn ){ fn(); }; }; }, 15); }; // 设置getStyle函数,获取计算后的样式 function getStyle(obj,attr){ if( window.getComputedStyle ){ return window.getComputedStyle(obj,null)[attr]; }else{ return obj.currentStyle[attr]; }; }; })(window) </script> </html>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望多多支持狼蚁SEO!
编程语言
- 宿迁百度关键词排名指南:实现精准营销的关键
- 四川SEO优化怎么做网络推广
- 立昂技术备案老域名收购:如何为您的业务赋能
- 安徽百度关键词seo贵不贵,一般需要多少钱
- 吉林百度快照排名怎么做电话营销
- 多伦新手做SEO怎么做
- 甘肃优化关键词排名推广怎么做论坛营销
- 沙雅SEO网站推广:提升您的在线可见性
- 四川SEO优化如何提升销售额和销售量
- 聂荣网站排名优化:提升网站可见性的全方位指
- 涞水SEO:提升地方企业在线可见性的策略
- 辽宁百度seo排名怎样做网站排名
- 临湘哪有关键词排名优化:提升网站可见度的关
- 黑龙江百度网站优化有没有优惠
- 凉城优化关键词排名推广:提升您的网络可见性
- 萝北整站优化:提升您网站流量和排名的全面指