html 气泡上升效果,js由下向上不断上升冒气泡效果实例

JS实现气泡从水中急速上升效果

body {

cursor:crosshair;margin:0; padding:0;

position:absolute; overflow:hidden;

background:#FFF; left:0; top:0;

width:100%; height:100%;

}

var object = new Array();

nbfm = 60;

var xm = 0;

var ym = 9999;

var nx = 0;

var ny = 0;

function movbulb(){

with (this) {

if(ec < 20){

if(Math.abs(x0 - xm) < 100 && Math.abs(y0 - ym) < 100){

xx = (xm - x0) / 8;

yy = (ym - y0) / 8;

ec++;

}

}

xx *= 0.99;

yy *= 0.99;

x0 = Math.round(x0 + Math.cos(y0 / 15) * p) + xx;

y0+= yy - v;

if(y0 < -h * 2 || x0 < -w * 2 || x0 > nx + w * 2){

y0 = ny + N + h * 2;

x0 = nx/2-100 + Math.random() * 100;

ec = 0;

}

obj.style.top = y0 - h;

obj.style.left = x0 - w;

}

}

function CObj(N,img,w,h){

this.obj = document.createElement("img");

this.obj.src = img.src;

this.obj.style.position = "absolute";

this.obj.style.left = -1000;

document.body.appendChild(this.obj);

this.N = N;

this.x0 = 0;

this.y0 = -1000;

this.v = 1 + Math.round((80 / h) * Math.random());

this.p = 1 + Math.round((w / 8) * Math.random());

this.xx = 0;

this.yy = 0;

this.ec = 0;

this.w = w;

this.h = h;

this.movbulb = movbulb;

}

function resize(){

nx = document.body.offsetWidth;

ny = document.body.offsetHeight;

}

onresize = resize;

document.onmousemove = function(e){

if (window.event) e = window.event;

xm = document.body.scrollLeft+(e.x || e.clientX);

ym = document.body.scrollTop+(e.y || e.clientY);

}

function run(){

for(i in object)object[i].movbulb();

setTimeout(run, 16);

}

onload = function() {

PIC = document.getElementById("bubbles").getElementsByTagName("img");

resize();

for(nbf=0;nbf

sf = PIC[nbf%PIC.length];

object[nbf] = new CObj(nbf,sf,sf.width/2,sf.height/2);

}

run();

}

35ee2592e50856d6b96e4bc63f978d09.gif

9600b212f6f2e0f466874ed214f0d028.gif

dd185d790a40fe2b06747d6d902ae062.gif

c3b624a6b16914333b18fa6dc1d77207.gif

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值