首页前端开发HTMLhtml开发数字雨特效代码

html开发数字雨特效代码

时间2023-07-14 23:51:01发布访客分类HTML浏览770
导读:HTML开发数字雨特效代码:<html><head><title>数字雨特效</title><style>body {background-color: #000000;overf...

HTML开发数字雨特效代码:

html>
    head>
    title>
    数字雨特效/title>
    style>
body {
    background-color: #000000;
    overflow: hidden;
}
.stream {
    position: absolute;
    font-size: 16px;
    color: #66FF00;
    z-index: 1;
    pointer-events: none;
}
    /style>
    /head>
    body>
    script>
    // 获取视窗宽度和高度const width = window.innerWidth;
    const height = window.innerHeight;
    // 数字雨层数const numStreams = 100;
    // 每层数字数量const numChars = 50;
    // 数字雨字符集const charSet = '0123456789ABCDEF';
// 随机生成数字function randomChar() {
    return charSet.charAt(Math.floor(Math.random() * charSet.length));
}
// 数字雨层对象class Stream {
constructor() {
    this.x = Math.floor(Math.random() * width);
    this.y = Math.floor(Math.random() * height);
    this.speed = Math.floor(Math.random() * 10) + 1;
    this.length = Math.floor(Math.random() * 10) + numChars;
    this.chars = new Array(this.length).fill(0).map(() =>
    randomChar());
}
// 更新数字雨位置update() {
    this.y += this.speed;
    if (this.y >
height) {
    this.y = -this.length * 16;
}
}
// 渲染数字雨render(ctx) {
    const charWidth = 8;
    for (let i = 0;
     i  this.length;
 i++) {
    const char = this.chars[i];
    ctx.fillText(char, this.x, this.y + i * charWidth);
}
}
}
    const streams = new Array(numStreams).fill(0).map(() =>
    new Stream());
// 绘制数字雨function draw() {
    const canvas = document.createElement('canvas');
    canvas.width = width;
    canvas.height = height;
    document.body.appendChild(canvas);
    const ctx = canvas.getContext('2d');
    ctx.font = '16px Consolas';
    ctx.fillStyle = '#66FF00';
    streams.forEach(stream =>
{
    stream.update();
    stream.render(ctx);
}
    );
    // 间隔一定时间重绘数字雨setTimeout(() =>
{
    requestAnimationFrame(() =>
{
    document.body.removeChild(canvas);
    draw();
}
)}
    , 50);
}
    draw();
    /script>
    /body>
    /html>
    

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: html开发数字雨特效代码
本文地址: https://pptw.com/jishu/310416.html
html开发设置背景图片 html开发能设置页面全屏吗

游客 回复需填写必要信息