Скрипт снега, ucoz |
Здравствуйте, гость ( Вход | Регистрация )
Скрипт снега, ucoz |
pasha2009k |
22.4.2009, 17:25
Сообщение
#1
|
Подрабатывающий Группа: Заблокированные Сообщений: 195 Регистрация: 9.4.2009 Пользователь №: 5 984 На форуме: 0d 11h 50m 27s Пол: мужской Репутация: -2 |
<script type=text/javascript>
// Скрипт снега var snowmax=30 var snowcolor=new Array("#AAAACC","#DDDDFF","#CCCCDD","#F3F3F3","#F0FFFF") var snowtype=new Array("Arial Black","Arial Narrow","Times","Comic Sans MS") var snowletter="*" var sinkspeed=0.9 var snowmaxsize=22 var snowminsize=8 var snowingzone=1 var snow=new Array() var marginbottom var marginright var timer var i_snow=0 var x_mv=new Array(); var crds=new Array(); var lftrght=new Array(); var browserinfos=navigator.userAgent var ie5=document.all&&document.getElementById&&!browserinfos.match(/Opera/) var ns6=document.getElementById&&!document.all var opera=browserinfos.match(/Opera/) var browserok=ie5||ns6||opera function randommaker(range) { rand=Math.floor(range*Math.random()) return rand } function initsnow() { if (ie5) { marginbottom = document.body.clientHeight marginright = document.body.clientWidth } else if (ns6) { marginbottom = document.body.clientHeight marginright = window.innerWidth } else if (opera) { marginbottom = document.documentElement.clientHeight marginright = document.body.clientWidth } var snowsizerange=snowmaxsize-snowminsize for (i=0;i<=snowmax;i++) { crds[i] = 0; lftrght[i] = Math.random()*15; x_mv[i] = 0.03 + Math.random()/10; snow[i]=document.getElementById("s"+i) snow[i].style.fontFamily=snowtype[randommaker(snowtype.length)] snow[i].size=randommaker(snowsizerange)+snowminsize snow[i].style.fontSize=snow[i].size snow[i].style.color=snowcolor[randommaker(snowcolor.length)] snow[i].sink=sinkspeed*snow[i].size/5 if (snowingzone==1) {snow[i].posx=randommaker(marginright-snow[i].size)} if (snowingzone==2) {snow[i].posx=randommaker(marginright/2-snow[i].size)} if (snowingzone==3) {snow[i].posx=randommaker(marginright/2-snow[i].size)+marginright/4} if (snowingzone==4) {snow[i].posx=randommaker(marginright/2-snow[i].size)+marginright/2} snow[i].posy=randommaker(2*marginbottom-marginbottom-2*snow[i].size) snow[i].style.left=snow[i].posx snow[i].style.top=snow[i].posy } movesnow() } function movesnow() { for (i=0;i<=snowmax;i++) { crds[i] += x_mv[i]; snow[i].posy+=snow[i].sink snow[i].style.left=snow[i].posx+lftrght[i]*Math.sin(crds[i]); snow[i].style.top=snow[i].posy if (snow[i].posy>=marginbottom-2*snow[i].size || parseInt(snow[i].style.left)>(marginright-3*lftrght[i])){ if (snowingzone==1) {snow[i].posx=randommaker(marginright-snow[i].size)} if (snowingzone==2) {snow[i].posx=randommaker(marginright/2-snow[i].size)} if (snowingzone==3) {snow[i].posx=randommaker(marginright/2-snow[i].size)+marginright/4} if (snowingzone==4) {snow[i].posx=randommaker(marginright/2-snow[i].size)+marginright/2} snow[i].posy=0 } } var timer=setTimeout("movesnow()",50) } for (i=0;i<=snowmax;i++) { document.write("<span id='s"+i+"' style='position:absolute;top:-"+snowmaxsize+"'>"+snowletter+"</span>") } if (browserok) { window.onload=initsnow } </SCRIPT> |
Brother |
15.12.2010, 16:44
Сообщение
#2
|
Наш человек Группа: Пользователи Сообщений: 514 Регистрация: 27.2.2009 Пользователь №: 5 757 На форуме: 4d 10h 58m 34s Пол: мужской Репутация: 0 |
И так и сяк тыкал... не получилось Нашёл другой:
Код <style>b{color:darkblue}</style> <script> var snowmax=25 // Set the number of snowflakes (more than 30 - 40 not recommended) var snowcolor=["#000000"] // Set the colors for the snow. Add as many colors as you like var snowtype=["Arial Black","Arial Narrow","Times","Comic Sans MS"] // Set the fonts, that create the snowflakes. Add as many fonts as you like var snowletter=["*"]; // Set the letter that creates your snowflake (recommended:*) var sinkspeed=1 // Set the speed of sinking (recommended values range from 0.3 to 2) var snowmaxsize=18 // Set the maximal-size of your snowflaxes var snowminsize=15 // Set the minimal-size of your snowflaxes var snowsizerange=snowmaxsize-snowminsize // Set the snowing-zone // Set 1 for all-over-snowing, set 2 for left-side-snowing // Set 3 for center-snowing, set 4 for right-side-snowing var snowingleft=0 //левая граница присутствия снега var snowingwidth=1 //ширина присутствия снега в окне var opac=0.35 //непрозрачность снега (0.0-1.0), при 1.0 в 2 раза быстрее работает. var stepTime=120 //шаг покадровой анимации (мсек). При менее 100 сильно нагружает процессор var snow=new Array() var marginbottom var marginright var timer var x_mv=new Array(); var crds=new Array(); var lftrght=new Array(); var browserinfos=navigator.userAgent d=document var isOpera=self.opera var ie5=d.all&&d.getElementById&&!isOpera var ns6=d.getElementById&&!d.all var browserok=ie5||ns6||isOpera function randommaker(range){return Math.floor(range*Math.random())} function botRight() { if(ie5||isOpera) { marginbottom=d.body.clientHeight; marginright=d.body.clientWidth; } else if(ns6) { marginbottom=innerHeight; marginright=innerWidth; } } function checkPgDn() { scrltop=ns6?pageYOffset:document.body.scrollTop; } function initsnow() { checkPgDn();if(ns6)setInterval("checkPgDn()",999); botRight(); for (i=0;i<=snowmax;i++) { crds[i] = 0; lftrght[i] = Math.random()*20; x_mv[i] = 0.03 + Math.random()/10; snow[i]=d.getElementById("s"+i) snow[i].style.fontFamily=snowtype[randommaker(snowtype.length)] snow[i].style.fontSize=snow[i].size=randommaker(snowsizerange)+snowminsize snow[i].style.color=snowcolor[randommaker(snowcolor.length)] snow[i].sink=sinkspeed*snow[i].size/5 newPosSnow(randommaker(marginbottom-3*snow[i].size)); } movesnow(); } function newPosSnow(y) { var o; snow[i].posx=randommaker(marginright*snowingwidth-2*snow[i].size)+marginright*snowingleft snow[i].posy=y+(ns6?pageYOffset:d.body.scrollTop); snow[i].size=randommaker(snowsizerange)+snowminsize; if(snow[i].hasChildNodes()&&(o=snow[i].childNodes[0]).tagName=='IMG') o.width=o.height=randommaker(snowsizerange/1.6)+snowminsize; } function movesnow() { for (i=0;i<=snowmax;i++) { snow[i].style.top=snow[i].posy+=snow[i].sink+lftrght[i]*Math.sin(crds[i])/3; crds[i] += x_mv[i]; snow[i].style.left=snow[i].posx+lftrght[i]*Math.sin(crds[i]); if(snow[i].posy>=marginbottom-3*snow[i].size+scrltop || parseInt(snow[i].style.left)>(marginright-3*lftrght[i]))newPosSnow(0); } var timer=setTimeout("movesnow()",stepTime) } for (i=0;i<=snowmax;i++) { d.write("<span id='s"+i+"' style='position:absolute;"+(opac<1?"-moz-opacity:"+opac+";filter:alpha(opacity="+(opac*100)+")":"")+";top:-"+snowmaxsize+"'>" +snowletter[Math.floor(snowletter.length*Math.random())]+"</span>") } //-moz-opacity:0.5;filter:alpha(opacity=50); onload=function() { if(browserok)setTimeout("initsnow()",99); } onmousewheel = onscroll = function(){checkPgDn()} onresize = function(){botRight();} </script> Цитата При менее 100 сильно нагружает процессор Работает... не весело посетителю и его мобильнику наверное..) -------------------- |
Текстовая версия | Сейчас: 23.11.2024, 1:01 |