Advertisement
Guest User

Untitled

a guest
Jun 21st, 2022
37
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.46 KB | None | 0 0
  1. <script>
  2. // Same ass code everyone uses for these sparkly thing's
  3. // Modified by Jean T. (GrayBox.Neocities.org)
  4.  
  5. // <![CDATA[
  6. var colour="#fff";
  7. var sparkles=50;
  8. var x=ox=400;
  9. var y=oy=300;
  10. var swide=800;
  11. var shigh=600;
  12. var sleft=sdown=0;
  13. var tiny=new Array();
  14. var star=new Array();
  15. var starv=new Array();
  16. var starx=new Array();
  17. var stary=new Array();
  18. var tinyx=new Array();
  19. var tinyy=new Array();
  20. var tinyv=new Array();
  21.  
  22. window.onload=function() { if (document.getElementById) {
  23.  
  24. var i, rats, rlef, rdow;
  25. for (var i=0; i<sparkles; i++) {
  26. var rats=createDiv(3, 3);
  27. rats.style.visibility="hidden";
  28. rats.style.zIndex="999";
  29. document.body.appendChild(tiny[i]=rats);
  30. starv[i]=0;
  31. tinyv[i]=0;
  32. var rats=createDiv(5, 5);
  33. rats.style.backgroundColor="transparent";
  34. rats.style.visibility="hidden";
  35. rats.style.zIndex="999";
  36. var rlef=createDiv(1, 5);
  37. var rdow=createDiv(5, 1);
  38. rats.appendChild(rlef);
  39. rats.appendChild(rdow);
  40. rlef.style.top="2px";
  41. rlef.style.left="0px";
  42. rdow.style.top="0px";
  43. rdow.style.left="2px";
  44. document.body.appendChild(star[i]=rats);
  45. }
  46. set_width();
  47. sparkle();
  48. }
  49. }
  50.  
  51. function sparkle() {
  52. //Modification 1
  53. document.getElementsByClassName("sparkle-trail").item(i).style.display = "block";
  54. var c;
  55. //Modification 2
  56. colour="#" + Math.floor(Math.random()*16777215).toString(16).slice(0, -3);
  57. if (x!=ox || y!=oy) {
  58. ox=x;
  59. oy=y;
  60. for (c=0; c<sparkles; c++) if (!starv[c]) {
  61. star[c].style.left=(starx[c]=x)+"px";
  62. star[c].style.top=(stary[c]=y)+"px";
  63. star[c].style.clip="rect(0px, 5px, 5px, 0px)";
  64. star[c].childNodes[0].style.backgroundColor=star[c].childNodes[1].style.backgroundColor=(colour=="random")?newColour():colour;
  65. star[c].style.visibility="visible";
  66. starv[c]=50;
  67. break;
  68. }
  69. }
  70. for (c=0; c<sparkles; c++) {
  71. if (starv[c]) update_star(c);
  72. if (tinyv[c]) update_tiny(c);
  73. }
  74. setTimeout("sparkle()", 40);
  75. }
  76.  
  77. function update_star(i) {
  78. if (--starv[i]==25) star[i].style.clip="rect(1px, 4px, 4px, 1px)";
  79. if (starv[i]) {
  80. stary[i]+=1+Math.random()*3;
  81. starx[i]+=(i%5-2)/5;
  82. if (stary[i]<shigh+sdown) {
  83. star[i].style.top=stary[i]+"px";
  84. star[i].style.left=starx[i]+"px";
  85. }
  86. else {
  87. star[i].style.visibility="hidden";
  88. starv[i]=0;
  89. return;
  90. }
  91. }
  92. else {
  93. tinyv[i]=50;
  94. tiny[i].style.top=(tinyy[i]=stary[i])+"px";
  95. tiny[i].style.left=(tinyx[i]=starx[i])+"px";
  96. tiny[i].style.width="2px";
  97. tiny[i].style.height="2px";
  98. tiny[i].style.backgroundColor=star[i].childNodes[0].style.backgroundColor;
  99. star[i].style.visibility="hidden";
  100. tiny[i].style.visibility="visible"
  101. }
  102. }
  103.  
  104. function update_tiny(i) {
  105. if (--tinyv[i]==25) {
  106. tiny[i].style.width="1px";
  107. tiny[i].style.height="1px";
  108. }
  109. if (tinyv[i]) {
  110. tinyy[i]+=1+Math.random()*3;
  111. tinyx[i]+=(i%5-2)/5;
  112. if (tinyy[i]<shigh+sdown) {
  113. tiny[i].style.top=tinyy[i]+"px";
  114. tiny[i].style.left=tinyx[i]+"px";
  115. }
  116. else {
  117. tiny[i].style.visibility="hidden";
  118. tinyv[i]=0;
  119. return;
  120. }
  121. }
  122. else tiny[i].style.visibility="hidden";
  123. }
  124.  
  125. document.onmousemove=mouse;
  126. function mouse(e) {
  127. if (e) {
  128. y=e.pageY;
  129. x=e.pageX;
  130. }
  131. else {
  132. set_scroll();
  133. y=event.y+sdown;
  134. x=event.x+sleft;
  135. }
  136. }
  137.  
  138. window.onscroll=set_scroll;
  139. function set_scroll() {
  140. if (typeof(self.pageYOffset)=='number') {
  141. sdown=self.pageYOffset;
  142. sleft=self.pageXOffset;
  143. }
  144. else if (document.body && (document.body.scrollTop || document.body.scrollLeft)) {
  145. sdown=document.body.scrollTop;
  146. sleft=document.body.scrollLeft;
  147. }
  148. else if (document.documentElement && (document.documentElement.scrollTop || document.documentElement.scrollLeft)) {
  149. sleft=document.documentElement.scrollLeft;
  150. sdown=document.documentElement.scrollTop;
  151. }
  152. else {
  153. sdown=0;
  154. sleft=0;
  155. }
  156. }
  157.  
  158. window.onresize=set_width;
  159. function set_width() {
  160. var sw_min=999999;
  161. var sh_min=999999;
  162. if (document.documentElement && document.documentElement.clientWidth) {
  163. if (document.documentElement.clientWidth>0) sw_min=document.documentElement.clientWidth;
  164. if (document.documentElement.clientHeight>0) sh_min=document.documentElement.clientHeight;
  165. }
  166. if (typeof(self.innerWidth)=='number' && self.innerWidth) {
  167. if (self.innerWidth>0 && self.innerWidth<sw_min) sw_min=self.innerWidth;
  168. if (self.innerHeight>0 && self.innerHeight<sh_min) sh_min=self.innerHeight;
  169. }
  170. if (document.body.clientWidth) {
  171. if (document.body.clientWidth>0 && document.body.clientWidth<sw_min) sw_min=document.body.clientWidth;
  172. if (document.body.clientHeight>0 && document.body.clientHeight<sh_min) sh_min=document.body.clientHeight;
  173. }
  174. if (sw_min==999999 || sh_min==999999) {
  175. sw_min=800;
  176. sh_min=600;
  177. }
  178. swide=sw_min;
  179. shigh=sh_min;
  180. }
  181.  
  182.  
  183. function createDiv(height, width) {
  184. var div=document.createElement("div");
  185. div.style.position="absolute";
  186. div.style.height=height+"px";
  187. div.style.width=width+"px";
  188. div.style.overflow="hidden";
  189. div.className = "sparkle-trail";
  190. return (div);
  191. }
  192.  
  193. function newColour() {
  194. var c=new Array();
  195. c[0]=255;
  196. c[1]=Math.floor(Math.random()*256);
  197. c[2]=Math.floor(Math.random()*(256-c[1]/2));
  198. c.sort(function(){return (0.5 - Math.random());});
  199. return ("rgb("+c[0]+", "+c[1]+", "+c[2]+")");
  200. }
  201.  
  202.  
  203. // ]]>
  204. </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement