24小时轮播怎么实现的_js如何实现木马轮播图效果

b7da2fc77e4c560848cd278669ef4a96.png

首先,我们来看一下木马轮播图效果:

9e5f2aa8e019d8e86f538d83ec23b1c8.png

具体代码如下:

(推荐教程:js教程)

html部分代码:

旋转木马轮播图

在html部分引入的myStyle.css文件部分代码

@charset "UTF-8"; blockquote,body,button,dd,dl,dt,fieldset,form,h1,h2,h3,h4, h5, h6, hr, input, legend, li, ol, p, pre, td, textarea, th, ul{ margin:0; padding:0} body,button,input,select,textarea{ font:12px/1.5 "Microsoft YaHei", "微软雅黑", SimSun, "宋体", sans-serif; color:#666;} ol,ul{ list-style:none} a{ text-decoration:none} fieldset,img{ border:0; vertical-align:top;} a,input,button,select,textarea{ outline:none} a,button{ cursor:pointer} .wrap{ width:1200px; margin:100px auto;}.slide{ height:500px; position: relative;} .slide li{ position:absolute; left:200px; top:0} .slide li img{ width:100%} .arrow{ opacity:0;} .prev ,.next{ width:76px; height:112px; position:absolute; top:50%; margin-top:-56px; background:url(../images/prev.png) no-repeat; z-index:99;} .next{ right:0; background-image:url(../images/next.png);}

在html部分引入的animate.js文件部分代码

/** * Created by RENPINGSHENG on 2018/4/6. */ function animate(obj,json,fn) { clearInterval(obj.timer); obj.timer = setInterval(function () { var flag = true; for(var k in json){ 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; obj.style[k] = leader /100; } else if ( k == "zIndex"){ obj.style[k] = json[k]; }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"; } console.log("target:" + target + "leader:" + leader + "step:" + step); if (leader != target){ flag = false; } } if (flag){ clearInterval(obj.timer); if(fn){ fn(); } } },15)} function getStyle(obj,attr){ if (obj.currentStyle){ return obj.currentStyle[attr]; }else{ return window.getComputedStyle(obj,null)[attr]; }}

在html部分引入的my.js文件部分代码

/** * Created by RENPINGSHENG on 2018/4/6. */ window.onload = function () { var wrap = document.getElementById("wrap"); var slide = document.getElementById("slide"); var ul = slide.children[0]; var lis = ul.children; var arrow = document.getElementById("arrow"); var arrRight = document.getElementById("arrRight"); var arrLeft = document.getElementById("arrLeft"); var config = [ { width:400, top:20, left:50, opacity:0.2, zIndex:2 }, { width:600, top:70, left:0, opacity:0.8, zIndex:3 }, { width:800, top:100, left:200, opacity:1, zIndex:4 }, { width:600, top:70, left:600, opacity:0.8, zIndex:3 }, { width:400, top:20, left:750, opacity:0.2, zIndex:2 } ]; wrap.onmouseover = function () { animate(arrow,{"opacity":1}); } wrap.onmouseout = function () { animate(arrow,{"opacity":0}); } function assign() { for(var i = 0;i < lis.length;i++){ animate(lis[i],config[i],function(){ flag = true; }) } } var flag = true; assign(); arrRight.onclick = function () { flag = false; config.push(config.shift()); assign(); }; arrLeft.onclick = function () { flag = false; config.unshift(config.pop()); assign(); }}

整个页面的文件结构如下图所示:

07b4e31de799da53b19e03e73bd16f7f.png

更多炫酷CSS3、html5、javascript特效代码,尽在:js特效大全

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值