您的位置:首页 > 编程语言

【编程游戏】贺岁放礼花。(点燃续帖1-58楼froole的焰火)

2008-12-30 17:19 387 查看
function viewPage(html) {
var page = window.open('', '', '');
page.opener = null;
page.document.write(html);
page.document.close();
}

【编程游戏】贺岁放礼花。(第一名奖励10000可用分)
作者:


点燃 [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

<html>
<body bgcolor="black">
<SCRIPT type="text/javascript">
radius =0;
last_radius=100;
startY=200;
c_count=0;
deviatY=1;
// 设定礼花颜色
Colors=new Array('ff0000','00ff00','ffffff','ff00ff','ffa500','ffff00','00ff00','ffffff','ff00ff');
sColors=new Array('ffa500','00ff00','FFAAFF','fff000','fffffF');
color=sColors[Math.floor(Math.random()*sColors.length)];

if(document.all){
last_radius=document.body.clientWidth/8;
startX=document.body.clientWidth/2;
staY= document.body.clientHeight-20;
}else{last_radius=window.outerWidth/8;
startX=window.outerWidth/2;
staY= window.outerHeight-20;
}
for(i=0;i<Math.PI*2;i=i+0.3){
document.write("<DIV STYLE='position:absolute;font-size:5;background-color:"+color+";top:"+staY+";left:"+startX+";'ID='bon"+i+"'>*</DIV>");
}

// 设定礼花升起时间
setTimeout("uchiage()",10)

function uchiage(){
if(startY < staY){
staY-=10;
for(i=0;i<Math.PI*2;i=i+0.3){
if(document.all){
document.all["bon"+i].style.pixelTop = staY+document.body.scrollTop;
}else{
document.getElementById("bon"+i).style.top=staY+window.pageYOffset +"px";
}
}
setTimeout("uchiage()",50);
}else{
radius =20;hanabi();
}
}

function hanabi(){
if(last_radius > radius){
radius +=10;
for(i=0;i<Math.PI*2;i=i+0.3){
pointX = startX + Math.cos(i)*radius;
(deviatY == 0.3)?katamuki=(pointX - startX) * 0.4:katamuki=0;
pointY = startY + Math.sin(i)*radius*deviatY+katamuki;
if(document.all){
document.all["bon"+i].style.pixelTop = pointY+document.body.scrollTop;
document.all["bon"+i].style.pixelLeft = pointX;
}else{
document.getElementById("bon"+i).style.top=pointY+window.pageYOffset +"px";
document.getElementById("bon"+i).style.left=pointX+"px";
}
}
// 设定礼花张开时间
setTimeout("hanabi()",60);
}else if(c_count<300){
for(i=0;i<Math.PI*2;i=i+0.3){
color=Colors[Math.floor(Math.random()*Colors.length)];
if(document.all){
document.all["bon"+i].style.backgroundColor = color;
}else{
document.getElementById("bon"+i).style.backgroundColor = color;
}
c_count++
}
// 设定礼花持续时间
setTimeout("hanabi()",50);
}else{
color=sColors[Math.floor(Math.random()*sColors.length)];
radius = 20;c_count=0;
if(document.all){
scrX=document.body.clientWidth - last_radius*2;
startX=Math.floor(Math.random()*scrX)+last_radius;
startY=Math.random()*last_radius+last_radius;
staY= document.body.clientHeight-20;
(!(Math.floor(Math.random()*3)))?deviatY=0.3:deviatY=1;
for(i=0;i<Math.PI*2;i=i+0.3){
document.all["bon"+i].style.backgroundColor = color;
document.all["bon"+i].style.pixelTop = staY+document.body.scrollTop;
document.all["bon"+i].style.pixelLeft = startX;
}
}else{
scrX=window.outerWidth-last_radius*2;
startX=Math.floor(Math.random()*scrX)+last_radius;
startY=Math.random()*last_radius+last_radius;
staY= window.outerHeight-20;
(!(Math.floor(Math.random()*3)))?deviatY=0.3:deviatY=1;
for(i=0;i<Math.PI*2;i=i+0.3){
document.getElementById("bon"+i).style.backgroundColor = color;
document.getElementById("bon"+i).style.top=staY+window.pageYOffset +"px";
document.getElementById("bon"+i).style.left=startX+"px";
}
}
uchiage();
}
}
function hanabi_size(){
if(document.all){
last_radius=document.body.clientWidth/8;
}else{
last_radius=window.outerWidth/8;
}
}
document.body.onresize=hanabi_size;</SCRIPT>
</body>
</html>

点燃 [Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐