溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

JavaScript制作3D旋轉(zhuǎn)相冊

發(fā)布時間:2020-09-26 09:05:39 來源:腳本之家 閱讀:198 作者:中二程序猿 欄目:web開發(fā)

本文實例為大家分享了js 3D旋轉(zhuǎn)相冊展示的具體代碼,供大家參考,具體內(nèi)容如下

源代碼:

<!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>

效果圖:

JavaScript制作3D旋轉(zhuǎn)相冊

可用鼠標(biāo)拖動。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI