Перейти к публикации

Скрипт падающего снега


Рекомендованные сообщения

У кого-нибудь имеется хороший проверенный скрипт падающего снега под DLE 7.3? И работающий под всеми браузерами? Перебрал целую кучу скриптов, большинство не работает, или работает только под IE, и зачастую снежинка "виснет" в левом верхнем углу.

Ссылка на сообщение
Поделиться на других сайтах

есть даю и никакого гифа

<script type=text/javascript>

var snowmax=20

var snowcolor=new Array("#9191be","#DDDDFF","#CCCCDD","#f7a8c5","#F0FFFF")

var snowtype=new Array("Arial Black","Arial Narrow","Times","Comic Sans MS")

var snowletter="*"

var sinkspeed=0.9

var snowmaxsize=32

var snowminsize=10

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 = 0;

lftrght = Math.random()*15;

x_mv = 0.03 + Math.random()/10;

snow=document.getElementById("s"+i)

snow.style.fontFamily=snowtype[randommaker(snowtype.length)]

snow.size=randommaker(snowsizerange)+snowminsize

snow.style.fontSize=snow.size

snow.style.color=snowcolor[randommaker(snowcolor.length)]

snow.sink=sinkspeed*snow.size/5

if (snowingzone==1) {snow.posx=randommaker(marginright-snow.size)}

if (snowingzone==2) {snow.posx=randommaker(marginright/2-snow.size)}

if (snowingzone==3) {snow.posx=randommaker(marginright/2-snow.size)+marginright/4}

if (snowingzone==4) {snow.posx=randommaker(marginright/2-snow.size)+marginright/2}

snow.posy=randommaker(2*marginbottom-marginbottom-2*snow.size)

snow.style.left=snow.posx

snow.style.top=snow.posy

}

movesnow()

}

function movesnow() {

for (i=0;i<=snowmax;i++) {

crds += x_mv;

snow.posy+=snow.sink

snow.style.left=snow.posx+lftrght*Math.sin(crds);

snow.style.top=snow.posy

if (snow.posy>=marginbottom-2*snow.size || parseInt(snow.style.left)>(marginright-3*lftrght)){

if (snowingzone==1) {snow.posx=randommaker(marginright-snow.size)}

if (snowingzone==2) {snow.posx=randommaker(marginright/2-snow.size)}

if (snowingzone==3) {snow.posx=randommaker(marginright/2-snow.size)+marginright/4}

if (snowingzone==4) {snow.posx=randommaker(marginright/2-snow.size)+marginright/2}

snow.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>

Ссылка на сообщение
Поделиться на других сайтах

filin, не работает. А если точнее, то снежинка весит в левом верхнем углу во всех браузерах.

Ссылка на сообщение
Поделиться на других сайтах

Не занимайся ерундой, многих эти снежинки раздражают

+ нагрузку на клиентскую машину дают не маленькую!

Ссылка на сообщение
Поделиться на других сайтах

Ребят, кто пробовал ставить этот скрипт: http://4dle.ru/2008/12/29/snowstorm.html Очень красиво выглядит в демо примере. Но на сайте не могу настроить. Хотя делаю все по инструкции.

Ссылка на сообщение
Поделиться на других сайтах

Я себе ставил этот скрипт на пробу.

Выглядит относительно красиво, но страница лагала. Рывки были как при фиксированном фоне, плюс народ оборвал мыло со словами недовольства, переходящими в бешенство от этого детства :)

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...