Home >Web Front-end >JS Tutorial >JS implementation to generate ring instances that will become larger and smaller_javascript skills
The example in this article describes the JS implementation of generating rings that will become larger and smaller. Share it with everyone for your reference. The details are as follows:
Here, JavaScript is used to generate a circle, which will become larger and smaller. This is a good example for studying how to use JavaScript to generate animation effects.
The operation effect is as shown below:
The specific code is as follows:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <style> #div1 {width:2px; height:2px; position:absolute; background:red; left:150px; top:200px;} div {width:3px; height:3px; position:absolute; background:black;} </style> <title>JS圆环</title> <script type="text/javascript"> var n=30; var r=100; var a=true; window.onload=function () { var oDiv1=document.getElementById('div1'); var aDiv=[]; var oDiv=null; var j=0; var i=0; for(i=0;i<n;i++) { oDiv=document.createElement('div'); aDiv.push(oDiv); document.body.appendChild(oDiv); } calcDrg(); function calcDrg() { for(i=0;i<n;i++) { var degress=360*i/n+j; var a=Math.sin(degress*Math.PI/180)*r; var b=Math.cos(degress*Math.PI/180)*r; aDiv[i].style.left=oDiv1.offsetLeft+b+'px'; aDiv[i].style.top=oDiv1.offsetTop-a+'px'; } } setInterval(function (){ j++; var s=0.3; a?r-=s:r+=s; if(r<=0 || r>=100) { a=!a; } calcDrg(); }, 10); }; </script> </head> <body> <div id="div1"> </div> </body> </html>
I hope this article will be helpful to everyone’s JavaScript programming design.