文字雨滴,很酷炫的效果!

客官°小女子只卖身不卖艺 2024-04-17 19:19 163阅读 0赞

html

  1. <!DOCTYPE html>
  2. <html>
  3. <head lang="en">
  4. <meta charset="UTF-8">
  5. <title>Html5下炫酷文字雨滴效果_简单实现</title>
  6. </head>
  7. <body bgcolor="#00008b">
  8. <div id="test"></div>
  9. <br>
  10. <input οnclick="operateAnimation(this)" id="operate" type="button" value="暂停" />
  11. <br>
  12. <canvas id="c"></canvas>
  13. <script language="JavaScript" src="js/app.js">
  14. </script>
  15. </body>
  16. </html>

js

  1. var test = document.getElementById("test");
  2. var str = "str";
  3. var c = document.getElementById("c");
  4. var ctx = c.getContext("2d");
  5. c.width = window.innerWidth
  6. || document.documentElement.clientWidth
  7. || document.body.clientWidth;
  8. c.height = window.innerHeight
  9. || document.documentElement.clientHeight
  10. || document.body.clientHeight;
  11. var chinese = "炫酷雨滴";
  12. chinese = chinese.split("");
  13. var fsize = 20;
  14. columns = c.width / fsize;
  15. var drops=[];
  16. for(var x=0;x<columns;x++) {
  17. drops[x] = 0;
  18. }
  19. function draw(){
  20. ctx.fillStyle="rgba(0,0,0,0.09)";
  21. ctx.fillRect(0,0, c.width, c.height);
  22. ctx.fillStyle="#0f0";
  23. ctx.font = fsize + "px arial";// arial is font
  24. for(var i=0;i<drops.length;i++){
  25. var text = chinese[Math.floor(Math.random()*chinese.length)];
  26. ctx.fillText(text,i*fsize,drops[i]*fsize);
  27. drops[i]++;
  28. if(drops[i]*fsize > c.height && Math.random() > 0.9){
  29. drops[i] = 0;
  30. }
  31. str = drops[i]+",";
  32. test.innerText = columns + " , i:" + str;// 测试数据
  33. }
  34. var intervalId = setInterval(draw,50);// 这里修改控制速度
  35. function operateAnimation(objBtn){
  36. var operate = document.getElementById("operate");
  37. f(objBtn.value == "开始"){
  38. objBtn.value = "暂停";
  39. intervalId = setInterval(draw,30);
  40. }else{
  41. objBtn.value = "开始";
  42. clearInterval(intervalId);
  43. }
  44. return false;
  45. }

在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,163人围观)

还没有评论,来说两句吧...

相关阅读

    相关 10 个效果 Linux 命令

    ![format_png][] 想想电影黑客帝国中的画面,估计会令很多人都叹为观止,其实最简单的只要会使用Linux操作系统就可以是简单的实现电脑屏幕的字符串雨了!是不是很高