这篇文章给大家分享的是有关js如何实现3D图片环展示效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
为临潭等地区用户提供了全套网页设计制作服务,及临潭网站建设行业解决方案。主营业务为网站制作、成都网站建设、临潭网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
可对整体进行拖拽
效果图:
代码如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> *{padding:0;margin:0; font-family: "Proxima Nova","proxima-nova","Helvetica Neue",Helvetica,Arial,sans-serif !important;} html body{overflow: hidden;} body{background:#ccc;} .box{width:140px; height:200px; -webkit-transform-style:preserve-3d; -webkit-transform: perspective(800px) rotateY(0deg) rotateX(0deg); position:relative; margin:400px auto;} .box span{width:140px; height:200px; position: absolute; background:deepskyblue; font-size:20px; text-align: center; line-height:200px; color:white;} </style> <script> function r2n(n){ return n*Math.PI/180 } window.onload=function(){ var oBox=document.getElementsByClassName('box')[0]; var aS=document.getElementsByTagName('span'); for(var i=0;i<aS.length;i++){ aS[i].style.WebkitTransition='1s all ease '+(aS.length-i)*.1+'s'; aS[i].style.WebkitTransform='rotateY('+i*360/aS.length+'deg)'+' translateZ(500px) ' } var pos=[]; var x=0; var y=0; var timer=null; var timer2=null; document.onmousedown=function(ev){ timer=setInterval(function(){ pos[0]=pos[2]; pos[1]=pos[3]; pos[2]=x; pos[3]=y; },30); var disx=ev.pageX-x; var disy=ev.pageY-y; document.onmousemove=function(ev){ x=ev.pageX-disx; y=ev.pageY-disy; oBox.style.WebkitTransform=' perspective(800px)'+' rotateY('+x/3+'deg)'+'rotateX('+-y/3+'deg)'; }; document.onmouseup=function(){ clearInterval(timer); var speedx=pos[2]-pos[0]; var speedy=pos[3]-pos[1]; timer2=setInterval(function(){ x+=speedx; y+=speedy; oBox.style.WebkitTransform=' perspective(800px)'+' rotateY('+x/3+'deg)'+'rotateX('+-y/3+'deg)'; speedx*=0.94; speedy*=0.94; if(Math.abs(speedx)<1)speedx=0; if(Math.abs(speedy)<1)speedy=0; if(speedx==0&&speedy==0){ clearInterval(timer2) } },30); document.onmousemove=null; document.onmouseup=null; } }; return false } </script> </head> <body> <div class="box"> <span>1</span> <span>2</span> <span>3</span> <span>4</span> <span>5</span> <span>6</span> <span>7</span> <span>8</span> <span>9</span> <span>10</span> <span>11</span> <span>12</span> </div> </body> </html>
感谢各位的阅读!关于“js如何实现3D图片环展示效果”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
文章标题:js如何实现3D图片环展示效果
文章出自:https://www.cdcxhl.com/article40/gijoho.html
成都网站建设公司_创新互联,为您提供营销型网站建设、外贸建站、搜索引擎优化、虚拟主机、网站建设、软件开发
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联