1. var sec = document.createElement('section')
2. sec.style.width = '300px';
3. sec.style.height = '300px';
4. sec.style.position = 'relative'
5. sec.style.left = '200px'
6. sec.style.top = '200px'
7. document.body.appendChild(sec)
8.
9. var div1 = document.createElement('div')
10. var div2 = document.createElement('div')
11. var div3 = document.createElement('div')
12. var div4 = document.createElement('div')
13. var div5 = document.createElement('div')
14. var div6 = document.createElement('div')
15. var divs = [div1,div2,div3,div4,div5,div6]
16. for(var i = 0;i < divs.length;i++){
17. divs[i].style.width = '80px';
18. divs[i].style.height = '80px';
19. divs[i].style.backgroundColor = 'red'
20. divs[i].style.borderRadius = '50%'
21. divs[i].style.position = 'absolute'
22. var x = Math.sin((360 / 6) * (Math.PI / 180) * [i]) * 150
23. var y = Math.cos((360 / 6) * (Math.PI / 180) * [i]) * 150
24. divs[i].style.top = y + 'px'
25. divs[i].style.left = x + 'px'
26. divs[i].style.backgroundColor = 'hsl(' + Math.random() * 360 + ',100%,50%)'
27. sec.appendChild(divs[i])
28. }
29.
30. // -------上面第一种方法,下面第二种------------
31. var r =100
32. var r1 = 50
33. var r2 =100
34. var initDeg = Math.PI / 4
35. var deg = Math.PI / 3
36. var offsetX = 250
37. var offsetY = 300
38. var R =150
39. for(var i = 0;i < 6;i++){
40. var div = document.createElement('div')
41. div.style.width = r1 + 'px'
42. div.style.height = r2 + 'px'
43. div.style.backgroundColor = 'hsl('+ i * 60 +',100%,50%)'
44. // hsl颜色值指定 HSL (色调,饱和度,明度)
45. // 色调 就是在色轮上的程度 值 0-360
46. // -0(360) 是红色 120是绿色 240蓝色
47. // 饱和度 是一个百分比值 0%意味着灰色和100%的阴影
48. // 亮度也是一个百分点 0%是黑色 100%白色
49. div.style.borderRadius = '50%'
50. div.style.position = 'absolute'
51. div.style.top = offsetX + R * Math.cos(initDeg + i * deg) + 'px'
52. div.style.left = offsetY + R * Math.sin(initDeg + i * deg) + 'px'
53. document.body.appendChild(div)
54. }
55. var divs = document.querySelectorAll('div')
56. function rotate(){
57. initDeg -= 0.02
58. for(var i = 0;i < 6;i++){
59. var div = divs[i]
60. div.style.top = offsetX + R * Math.cos(initDeg + i * deg) + 'px'
61. div.style.left = offsetY + R * Math.sin(initDeg + i * deg) + 'px'
62. div.style.transform = 'rotate('+ 180 *(initDeg + deg * i)/Math.PI + 'deg)'
63. }
64. requestAnimationFrame(rotate)
65. }
66. requestAnimationFrame(rotate)
67. // setInterval(rotate,10)