jQuery下雪特效

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>jQuery下雪特效</title>
    <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
    <style>
        body {
            margin: 0;
            overflow: hidden;
            background: #000;
        }
        .snowflake {
            position: absolute;
            color: white;
            font-size: 20px;
            pointer-events: auto;
            cursor: pointer;
            user-select: none;
            text-shadow: 0 0 5px #fff;
            animation: fall linear infinite;
        }
        @keyframes fall {
            to {
                transform: translateY(100vh);
            }
        }
    </style>
</head>
<body>
    <script>
        $(document).ready(function() {
            // 创建雪花
            function createSnowflake() {
                const snowflake = $('<div class="snowflake">❄</div>');
                
                // 随机位置
                const startX = Math.random() * $(window).width();
                const startY = -20;
                
                // 随机大小
                const size = Math.random() * 15 + 10;
                
                // 随机动画持续时间
                const duration = Math.random() * 10 + 5;
                
                // 随机透明度
                const opacity = Math.random() * 0.7 + 0.3;
                
                // 应用样式
                snowflake.css({
                    left: startX + 'px',
                    top: startY + 'px',
                    fontSize: size + 'px',
                    opacity: opacity,
                    animationDuration: duration + 's'
                });
                

                
                $('body').append(snowflake);
                
                // 动画结束后移除雪花
                setTimeout(function() {
                    snowflake.remove();
                }, duration * 1000);
            }
            
            // 定期创建雪花
            setInterval(createSnowflake, 200);
        });
    </script>
</body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值