HTML 和 JavaScript 实现飘花的效果
HTML 和 JavaScript 实现飘花的效果,也不算花,就是有悬浮物飘下来,和下雪似的。
也是不需要图片和其他的 js 脚本做辅助,其实已经全写在 HTML 文件中了。
<html> <head> <title>飘花效果</title> </head> <body> <canvas id="christmasCanvas" style="top: 0px; left: 0px; z-index: 5000; position: fixed; pointer-events: none;"></canvas> <script> var snow = function () { var b = document.getElementById("christmasCanvas"), a = b.getContext("2d"), d = window.innerWidth, c = window.innerHeight; b.width = d; b.height = c; for (var e = [], b = 0; b < 70; b++) { e.push({x: Math.random() * d, y: Math.random() * c, r: Math.random() * 4 + 1, d: Math.random() * 70}) } var h = 0; window.intervral4Christmas = setInterval(function () { a.clearRect(0, 0, d, c); a.fillStyle = "rgba(255, 255, 0, 0.6)"; a.shadowBlur = 5; a.shadowColor = "rgba(255, 255, 255, 0.9)"; a.beginPath(); for (var b = 0; b < 70; b++) { var f = e[b]; a.moveTo(f.x, f.y); a.arc(f.x, f.y, f.r, 0, Math.PI * 2, !0) } a.fill(); h += 0.01; for (b = 0; b < 70; b++) { if (f = e[b], f.y += Math.cos(h + f.d) + 1 + f.r / 2, f.x += Math.sin(h) * 2, f.x > d + 5 || f.x < -5 || f.y > c) { e[b] = b % 3 > 0 ? {x: Math.random() * d, y: -10, r: f.r, d: f.d} : Math.sin(h) > 0 ? { x: -5, y: Math.random() * c, r: f.r, d: f.d } : {x: d + 5, y: Math.random() * c, r: f.r, d: f.d} } } }, 70) } snow(); </script> </body> </html>
就是下面的效果,有黄色的小圈圈掉下来。能看清吧?
【版权声明】本博文著作权归作者所有,任何形式的转载都请联系作者获取授权并注明出处!
【重要说明】博文仅作为本人的学习记录,论点和观点仅代表个人而不代表技术的真理,目的是自我学习和有幸成为可以向他人分享的经验,因此有错误会虚心接受改正,但不代表此刻博文无误!
【博客园地址】叫我+V : http://www.cnblogs.com/wjw1014
【CSDN地址】叫我+V : https://wjw1014.blog.csdn.net/
【Gitee地址】叫我+V :https://gitee.com/wjw1014
【重要说明】博文仅作为本人的学习记录,论点和观点仅代表个人而不代表技术的真理,目的是自我学习和有幸成为可以向他人分享的经验,因此有错误会虚心接受改正,但不代表此刻博文无误!
【博客园地址】叫我+V : http://www.cnblogs.com/wjw1014
【CSDN地址】叫我+V : https://wjw1014.blog.csdn.net/
【Gitee地址】叫我+V :https://gitee.com/wjw1014