当前位置:   article > 正文

JS实现《黑客帝国》落地字母背景

if(math.random()<0.25)

微笑JS实现《黑客帝国》落地字母背景。这个特别有意思,主要是通过设置字符相关属性。控制循环字母距离顶部的高度值,来达到字母不断循环下落的功能。

恩,还有加上一个随机机制,出现各种大小 各个位置 各种颜色 各种长度的效果。

好了,废话不多说,天色已晚,先看代码。

======》先发图,有图才有真相。


===============》以下代码,还是挺好玩的哦。

  1. <HTML>
  2. <HEAD>
  3. <TITLE>黑客帝国</TITLE>
  4. <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
  5. </HEAD>
  6. <style type="text/css">
  7. body
  8. {
  9. overflow:hidden;
  10. margin:0;
  11. background-color:#000000;
  12. font-family:宋体;
  13. }
  14. DIV.#heike
  15. {
  16. overflow:hidden;
  17. position:relative;
  18. top:5%;
  19. width:90%;
  20. height:90%;
  21. border-style:solid;
  22. border-width:1;
  23. border-color:#009900;
  24. }
  25. </style>
  26. <script type="text/javascript">
  27. var strCount;
  28. var str;
  29. var Color;
  30. var Font;
  31. var sLine = "1<br>0<br>0<br>.<br>1<br>0<br>1<br>1<br>1<br>.<br>0<br>O<br>1<br>1<br>0<br>1<br>1";
  32. function OnLoad()
  33. {
  34. strCount = 60;
  35. str = [];
  36. Color = [];
  37. Font = [];
  38. Color[0] = "#002211";//文字的颜色
  39. Color[1] = "#003311";
  40. Color[2] = "#005511";
  41. Color[3] = "#008811";
  42. Color[4] = "#00BB99";
  43. Color[5] = "#114411";
  44. Color[6] = "#335566";
  45. Color[7] = "#668899";
  46. Color[8] = "#99BBAA";
  47. Color[9] = "#CECECC";
  48. Font[0] = "20px"; //文字的大小
  49. Font[1] = "12px";
  50. Font[2] = "24px";
  51. Font[3] = "36px";
  52. Font[4] = "48px";
  53. setTimeout("strik()",100);
  54. }
  55. function strik()
  56. {
  57. for(var i=0;i<strCount;i++)
  58. {
  59. if(typeof(str[i]) != "undefined") //假设字符串存在
  60. {
  61. if(str[i]["Carch"].style.pixelTop > heike.clientHeight)
  62. {
  63. str[i]["Carch"].outerHTML = "";
  64. delete str[i]["Level"];//删除数组元素
  65. delete str[i]["Speed"];
  66. delete str[i]["Carch"];
  67. delete str[i];
  68. }
  69. else
  70. {
  71. str[i]["Carch"].style.pixelTop += str[i]["Speed"];//距离顶部的高度等于累加上Speed的值
  72. }
  73. }
  74. else if(Math.random()<0.25) //随机小数
  75. {
  76. str[i] = new Array();
  77. str[i]["Level"] = Math.round(Math.random()*4); //0~4
  78. str[i]["Speed"] = (Math.round(Math.random()*str[i]["Level"])<<2)+5;//(0~16)+5 后面加的数字越小。字母下路的速度越慢
  79. document.all["heike"].insertAdjacentHTML("AfterBegin","<span id='SPAN_"+i+"'>"+sLine+"</span>");//加入字母的出现区域
  80. str[i]["Carch"] = document.all["SPAN_"+i];
  81. str[i]["Carch"].style.fontSize = Font[str[i]["Level"]]; //字体
  82. str[i]["Carch"].style.position = "absolute"; //位置
  83. str[i]["Carch"].style.pixelLeft = Math.round(Math.random()*heike.clientWidth); //x坐标
  84. str[i]["Carch"].style.pixelTop = -str[i]["Carch"].offsetHeight; //y坐标
  85. str[i]["Carch"].style.color = Color[str[i]["Level"]+5]; //颜色0~9
  86. str[i]["Carch"].style.filter = "glow(Color="+Color[str[i]["Level"]]+",Strength=5)";//滤镜效果 glow(color=+#988fff,5)
  87. str[i]["Carch"].style.zIndex = str[i]["Level"]; //z-Index 堆砌次序
  88. }
  89. }
  90. setTimeout("strik()",50);
  91. }
  92. </script>
  93. <BODY οnlοad="OnLoad()">
  94. <table width="100%" height="100%" border="0" cellspacing="0" cellpadding="0">
  95. <tr><td align="center" height="100%"><div id="heike"></div></td></tr>
  96. </table>
  97. </BODY>
  98. </HTML>
吐舌头OK。今天就到这里了,睡觉去啊。有兴趣的能够试着玩一玩,多改进下,会有意想不到的效果哦。

奋斗喜欢小弟就关注我一下吧。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/722973
推荐阅读
相关标签
  

闽ICP备14008679号