红包雨效果html,js+css实现红包雨效果

//每一个红包都是相对于父元素定位,通过z-index来设置层级

let zIndex = 1;

function bindEvent() {

$redPackage.on('click','.js-RedPackageBox',function() {

//拿到每个红包的数据

const data = $(this).data('txt');

}

}

//生成mix-max的随机数

function getRandom(min,max) {

return Math.round(Math.random() * (max - min) + min);

}

//红包的移动

function redPackageBoxSpeed($el,time) {

$el.animate(

{

top: '130%',},time * 1000,function() {

$el.remove();

}

);

}

//生成红包

function createRedPackageNode() {

const $newNode = $redPackageBox.clone(true);

//红包携带的数据

const txt = keyList.shift();

keyList.push(txt);

$newNode.attr('data-txt',JSON.stringify(txt));

//红包随机旋转-30~30度

$newNode.css({

'z-index': zIndex++,left: getRandom(basePadding,maxLeftPx) + 'px',transform: 'rotate(' + getRandom(-30,30) + 'deg)',});

$redPackage.append($newNode);

redPackageBoxSpeed($newNode,4);

}

//红包的动态创建

function createRedPackageRain() {

setInterval(() => {

createRedPackageNode();

},300);

}

function ready() {

bindEvent();

createRedPackageRain();

}

ready();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值