利用jQuery实现橙汁水汽泡动画特效



10 37 13



特效描述:利用jQuery实现 橙汁水汽泡 动画特效,利用jQuery实现橙汁水汽泡动画特效

代码结构

1. 引入JS

<script src="js/jquery.min.js"></script>

2. HTML代码

<div class='soda'></div>
<script>
const floatOn = options => {
	let el = options.el,
		x = options.x,
		xIsPos = options.xIsPos || Math.floor(Math.random()),
		updateX = options.updateX || Math.floor(Math.random()),
		curTop = parseInt(el.style.top),
		curLeft = parseInt(el.style.left);
	if (curTop > -50) {
		el.style.top = `${--curTop}px`;
	} else {
		el.style.top = `${innerHeight + 50}px`;
	}
	if (updateX) {
		if (xIsPos) {
			if (curLeft > x + 10) {
				xIsPos = false;
			} else {
				el.style.left = `${curLeft + 1}px`;
			}
		} else {
			if (curLeft < x - 10) {
				xIsPos = true;
			} else {
				el.style.left = `${--curLeft}px`;
			}
		}
	}
	updateX = updateX ? false : true;
	requestAnimationFrame(
		floatOn.bind(null, { el: el, x: x, xIsPos: xIsPos, updateX: updateX })
	);
};
class Bubble {
	constructor(target, i) {
		this.bubble = document.createElement("div");
		this.bubble.classList.add("bubble");
		this.x = Math.floor(Math.random() * innerWidth);
		this.y = Math.floor(Math.random() * innerHeight);
		this.scale = Math.random();
		this.pos = Math.round(Math.random());
		this.bubble.style.top = `${this.y}px`;
		this.bubble.style.left = `${this.x}px`;
		this.bubble.style.transform = `translateZ(${
			this.pos ? "" : "-"
		}${this.scale.toFixed(2) * 1000}px)`;
		setTimeout(() => {
			target.appendChild(this.bubble);
		}, i * 50);
		setTimeout(floatOn.bind(null, { el: this.bubble, x: this.x }), i * 50);
	}
}
for (let i = 0; i < 100; i++) {
	new Bubble(document.querySelector(".soda"), i);
}
</script>
<div style="text-align:center;margin:50px 0; font:normal 14px/24px 'MicroSoft YaHei';">
</div>



用户评论
大牛,别默默的看了,快登录帮我点评一下吧!:)      登录 | 注册


热门标签: 加载动画 h5弹窗动画 html5弹窗动画 h5动画 h5背景动画 h5场景动画 h53D动画 h5界面动画 html5动画 h5按钮动画 html5按钮动画 h5图片动画 h5图标动画 html5图片动画 html5图标动画

×
×

注册

官方QQ群

扫描上面二维码加微信群

官方QQ群

jQuery/js讨论群
群号:642649996
Css3+Html5讨论群
群号:322131262

加群请备注:从官网了解到