时间:2021-05-26
可对整体进行拖拽
效果图:
代码如下:
<!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>以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例为大家分享了js实现3D旋转相册的具体代码,供大家参考,具体内容如下效果展示:使用图片:剩余自己随意图片大小为133*200代码展示:3D效果*{bac
本文实例讲述了JS实现3D图片旋转展示效果代码。分享给大家供大家参考。具体如下:这是一段JavaScript代码,围绕成3D模型样式的JavaScript图片旋
3D的图片轮播效果很炫,写到这里只是为了不丢代码,不为别的。效果预览:html代码:js实现3D图片逐张轮播幻灯片ul#bcty365_nav{padding-
本文实例讲述了Android编程实现3D旋转效果的方法。分享给大家供大家参考,具体如下:下面的示例是在Android中实现图片3D旋转的效果。实现3D效果一般使
本文实例为大家分享了JS实现简单随机3D骰子的具体代码,供大家参考,具体内容如下描述:JS——实现简单的随机3D骰子。效果:实现:html文件:Document