Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Снежинки

990
28 декабря 2004 года
Stalcer
137 / / 15.08.2004
Js скрипт выводит снежинки, но почему-то тормозится flash (ptm.com.ua). Подскажите как устранить этот побочный эффект.
Код:
<script language="JavaScript">
<!--
Amount=30;
Image0=new Image();
Image0.src="flake1.gif";
Image1=new Image();
Image1.src="flake2.gif";
Image2=new Image();
Image2.src="flake3.gif";
Image3=new Image();
Image3.src="flake4.gif";
Image4=new Image();
Image4.src="flake5.gif";

grphcs=new Array(5)
grphcs[0]="flake1.gif"
grphcs[1]="flake2.gif"
grphcs[2]="flake3.gif"
grphcs[3]="flake4.gif"
grphcs[4]="flake5.gif"

Ypos=new Array();
Xpos=new Array();
Speed=new Array();
Step=new Array();
Cstep=new Array();
ns=(document.layers)?1:0;
if (ns){
for (i = 0; i < Amount; i++){
var P=Math.floor(Math.random()*grphcs.length);
rndPic=grphcs;
document.write("<LAYER NAME='sn"+i+"' LEFT=0 TOP=0></LAYER>");
}
}
else{
document.write('<div style="position:absolute;top:0px;left:0px"><div style="position:relative">');
for (i = 0; i < Amount; i++){
var P=Math.floor(Math.random()*grphcs.length);
rndPic=grphcs;
document.write('');
}
document.write('</div></div>');
}
WinHeight=(document.layers)?window.innerHeight:window.document.body.clientHeight;
WinWidth=(document.layers)?window.innerWidth:window.document.body.clientWidth;
for (i=0; i < Amount; i++){                                                                
 Ypos = Math.round(Math.random()*WinHeight);
 Xpos = Math.round(Math.random()*WinWidth);
 Speed= Math.random()*1+1;
 Cstep=0;
 Step=Math.random()*0.1+0.05;
}
function fall(){
var WinHeight=(document.layers)?window.innerHeight:window.document.body.clientHeight;
var WinWidth=(document.layers)?window.innerWidth:window.document.body.clientWidth;
var hscrll=(document.layers)?window.pageYOffset:document.body.scrollTop;
var wscrll=(document.layers)?window.pageXOffset:document.body.scrollLeft;
for (i=0; i < Amount; i++){
sy = Speed*Math.sin(90*Math.PI/180);
sx = Speed*Math.cos(Cstep);
Ypos+=sy;
Xpos+=sx;
if (Ypos > WinHeight){
Ypos=-60;
Xpos=Math.round(Math.random()*WinWidth);
Speed=Math.random()*1+1;
}
if (ns){
document.layers['sn'+i].left=Xpos;
document.layers['sn'+i].top=Ypos+hscrll;
}
else{
si.style.pixelLeft=Xpos;
si.style.pixelTop=Ypos+hscrll;
}
Cstep+=Step;
}
setTimeout('fall()',10);
}
//-->
</script>
4
28 декабря 2004 года
mike
3.7K / / 01.10.2002
Флеш всегда будет сверху.
990
28 декабря 2004 года
Stalcer
137 / / 15.08.2004
Цитата:
Originally posted by mike
Флеш всегда будет сверху.


Он то сверху - это понятно, но почему он останавливается? Можно как-то избежать эту остановку воспроизведения?

990
29 декабря 2004 года
Stalcer
137 / / 15.08.2004
Цитата:
Originally posted by Stalcer

Он то сверху - это понятно, но почему он останавливается? Можно как-то избежать эту остановку воспроизведения?


Форум явно "умирает", кроме админа помочь больше некому...

2.2K
29 декабря 2004 года
Web-master
113 / / 23.12.2004
Цитата:
Originally posted by Stalcer

Форум явно "умирает", кроме админа помочь больше некому...



Форум живет..и портал тоже..все гуд !

8.2K
29 декабря 2004 года
gorodok
17 / / 22.12.2004
Цитата:
Originally posted by Web-master


Форум живет..и портал тоже..все гуд !


Как это флэшки останавливаются, мож всё-таки тормозят?

990
29 декабря 2004 года
Stalcer
137 / / 15.08.2004
Цитата:
Originally posted by gorodok

Как это флэшки останавливаются, мож всё-таки тормозят?


Какая разница, у меня останавливаются...
См. ptm.com.ua

8.2K
30 декабря 2004 года
gorodok
17 / / 22.12.2004
Цитата:
Originally posted by Stalcer

Какая разница, у меня останавливаются...
См. ptm.com.ua


Во-первых, удали весь предыдущий код и подставь внутри body:
(это код из главной станицы code net, но я его изменил, так чтобы снежинки менялись)

Код:
<script language=JavaScript1.2>
var no = 5; // snow number
var speed = 8; // smaller number moves the snow faster
var snowflake;
snowflake= new Array(5);
snowflake[0]="flake1.gif";
snowflake[1]="flake2.gif";
snowflake[2]="flake3.gif";
snowflake[3]="flake4.gif";
snowflake[4]="flake5.gif";

var ns4up = (document.layers) ? 1 : 0;  // browser sniffer
var ie4up = (document.all) ? 1 : 0;
var dx, xp, yp;    // coordinate and position variables
var am, stx, sty;  // amplitude and step variables
var i, doc_width = 800, doc_height = 600;
if (ns4up) {
doc_width = self.innerWidth;
doc_height = self.innerHeight;
} else if (ie4up) {
doc_width = document.body.clientWidth;
doc_height = document.body.clientHeight;
}
dx = new Array();
xp = new Array();
yp = new Array();
am = new Array();
stx = new Array();
sty = new Array();
for (i = 0; i < no; ++ i) {  
dx = 0;                        // set coordinate variables
xp = Math.random()*(doc_width-50);  // set position variables
yp = Math.random()*doc_height;
am = Math.random()*20;         // set amplitude variables
stx = 0.02 + Math.random()/10; // set step variables
sty = 0.7 + Math.random();     // set step variables
if (ns4up) {
var P=Math.floor(Math.random()*snowflake.length);
rnd=snowflake;
if (i == 0) {
document.write("<layer name=\"dot"+ i +"\" left=\"15\" top=\"15\" visibility=\"show\"><img src=\"" + rnd + "\" border=\"0\"></layer>");
} else {
document.write("<layer name=\"dot"+ i +"\" left=\"15\" top=\"15\" visibility=\"show\"><img src=\"" + rnd + "\" border=\"0\"></layer>");
   }
} else if (ie4up) {
var P=Math.floor(Math.random()*snowflake.length);
rnd=snowflake;
if (i == 0) {
document.write("<div id=\"dot"+ i +"\" style=\"POSITION: absolute; Z-INDEX: "+ 33 +"; VISIBILITY: visible; TOP: 15px; LEFT: 15px;\"><img src=\"" + rnd + "\" border=\"0\"></div>");
} else {
document.write("<div id=\"dot"+ i +"\" style=\"POSITION: absolute; Z-INDEX: "+ 33 +"; VISIBILITY: visible; TOP: 15px; LEFT: 15px;\"><img src=\"" + rnd + "\" border=\"0\"></div>");
      }
   }
}
function snowNS() {  // Netscape main animation function
for (i = 0; i < no; ++ i) {  // iterate for every dot
yp += sty;
if (yp > doc_height-50) {
xp = Math.random()*(doc_width-am-30);
yp = 0;
stx = 0.02 + Math.random()/10;
sty = 0.7 + Math.random();
doc_width = self.innerWidth;
doc_height = self.innerHeight;
}
dx += stx;
document.layers["dot"+i].top = yp;
document.layers["dot"+i].left = xp + am*Math.sin(dx);
}
setTimeout("snowNS()", speed);
}
function snowIE() {  // IE main animation function
for (i = 0; i < no; ++ i) {  // iterate for every dot
yp += sty;
if (yp > doc_height-50) {
xp = Math.random()*(doc_width-am-30);
yp = 0;
stx = 0.02 + Math.random()/10;
sty = 0.7 + Math.random();
doc_width = document.body.clientWidth;
doc_height = document.body.clientHeight;
}
dx += stx;
document.all["dot"+i].style.pixelTop = yp;
document.all["dot"+i].style.pixelLeft = xp + am*Math.sin(dx);
}
setTimeout("snowIE()", speed);
}
if (ns4up) {
snowNS();
} else if (ie4up) {
snowIE();
}
</script>
4
30 декабря 2004 года
mike
3.7K / / 01.10.2002
Вообще JavaScript не должен влиять на Flash.
8.2K
30 декабря 2004 года
gorodok
17 / / 22.12.2004
Цитата:
Originally posted by mike
Вообще JavaScript не должен влиять на Flash.


Он и не может влиять, тем более останавливать ролик, а вот притормаживать его может!

990
31 декабря 2004 года
Stalcer
137 / / 15.08.2004
Цитата:
Originally posted by gorodok

Он и не может влиять, тем более останавливать ролик, а вот притормаживать его может!


Огромное спасибо, все работает.
Форум действительно живой и посещаемый :D Всех с Новым Годом!!!

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог