Maison >interface Web >js tutoriel >Javascript réalise la transformation 3D d'un cercle tridimensionnel example_javascript skills
L'exemple de cet article décrit l'implémentation de la transformation 3D de cercles tridimensionnels en JavaScript. Partagez-le avec tout le monde pour votre référence. Les détails sont les suivants :
Ici, nous utilisons javascript pour implémenter des cercles tridimensionnels pouvant se transformer, des modifications 3D sur la page Web, des effets spéciaux de cercle changeant de couleur et des effets spéciaux de cercle 3D sur la page Web. Chaque point du cercle a une couleur différente, qui est plus clairement visible sur un fond de page Web noir.
L'effet de l'opération est comme indiqué ci-dessous :
Le code spécifique est le suivant :
<html> <head> <title>变色的圆圈</title> <style type="text/css"> <!-- body { background-color: #000000; } --> </style></head> <body> <script language="JavaScript"> var CoLoUrS=new Array('ff0000','ffffff','0000ff','ffffff'); var dots=16; var step=0.3; var a_StEp=0.05; var RunTime=Xpos =Ypos =count_a=count=currStep =0; var cntr=70; var move_a=move=1; var curColour; document.write('<div id="moveDiv" style="position:absolute;top:0px;left:0px">'); for (i=0; i < dots; i++){ document.write('<div style="position:absolute;top:0px;left:0px;width:2px;height:2px;background:#ffffff;font-size:2px"></div>'); } document.write('</div>'); var x = moveDiv.all; var numdiv=new Array(x[0],x[1],x[2],x[3],x[4],x[5],x[6],x[7],x[8],x[9],x[10],x[11],x[12],x[13],x[14],x[15]); function colourStep(){ count+=move; if (count >= numdiv.length) {count=0;count_a+=move} if (count_a == CoLoUrS.length) count_a=0; numdiv[count].style.background=CoLoUrS[count_a]; setTimeout('colourStep()',100) } function divmove(){ Ypos = document.body.scrollTop+document.body.offsetHeight/2 + document.body.offsetHeight/2.8*Math.cos((RunTime)/3)*Math.cos(RunTime/10); Xpos= document.body.scrollLeft+document.body.offsetWidth/2 + document.body.offsetWidth/2.4*Math.sin((RunTime)/5)*Math.sin(RunTime/20); RunTime+=a_StEp; Tma=setTimeout("divmove()", 10); } function overturn(){ for (i=0;i<numdiv.length;i++){ numdiv[i].style.top = Ypos+cntr*Math.cos((currStep + i*4)/10.2)*Math.cos(currStep/10); numdiv[i].style.left= Xpos+cntr*Math.sin((currStep + i*4)/10.2); } currStep+=step; setTimeout("overturn()",10); } function Shrink(){ cntr-=0.5; GoShrink=setTimeout('Shrink()',10); if (cntr <=20){clearTimeout(GoShrink);Swell()} } function Swell(){ cntr+=0.5; GoSwell=setTimeout('Swell()',10); if (cntr >=70){clearTimeout(GoSwell);Shrink()} } function transfer(){ divmove(); //移动层 overturn(); //使层进行翻转 Shrink(); //改变层的大小 colourStep(); //变换层的颜色 } transfer(); </script> </body> </html>
J'espère que cet article sera utile à la conception de la programmation JavaScript de chacun.