Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: не работает скрипт в IE и в Mazilla
 
 автор: nautilus2812   (08.10.2010 в 21:05)   письмо автору
 
 

Добрый вечер..есть такой скрипт салюта..взял в инете..но он почему то у меня работает только в опере..в мазиле и IE не работает..может кто подскажет..очень надо
<script type="text/javascript">
var ns=document.layers?1:0
var ie4=document.all?1:0
var ns6= document.getElementById&&!document.all?1:0
amount=14;
if (ns){
for (i=0; i < amount; i++)
document.write("<layer name= 'nsstars"+i+"' left=0 top=0 bgcolor='#fffff0' clip='0,0,1,1'></layer>");
}else if (ie4||ns6){
document.write("<div id='ieCov' style='position:absolute;top:0px;left:0px'>");
document.write("<div style='position:relative'>");
for (i=0; i < amount; i++)
document.write("<div id='iestars"+i+"' style='position:absolute; top:0px;left:0px;width:1; height:1;background:#ffffff; font-size:1;z-index:10'></div>");
document.write("</div></div>");}
Clrs=new Array ('ff0000','00ff00','ffffff','ff00ff','ffa500','ffff00', '00ff00','ffffff','ff00ff')
sClrs=new Array ('ffa500','00ff00','FFAAFF','fff000','fffffF')
Xpos=300;Ypos=150;initialStarColor='00ff00';step=5;currStep=0;explosionSize=120;
<!-- web-mastery.info  -->
function Fireworks(){
var WinHeight= (ns||ns6)?window.innerHeight-100: window.document.body.clientHeight-100;
var WinWidth= (ns||ns6)?window.innerWidth-100: window.document.body.clientWidth-100;
var Yscroll= (ns||ns6)?window.pageYOffset:document.body. scrollTop;
for (i=0; i < amount; i++){
if (ie4||ns6)
var layer= ns6?document.getElementById("iestars"+i).style : eval("iestars"+i).style;
else if (ns)
var layer=document.layers["nsstars"+i]
var randCol=Math.round(Math.random()*8);
var randSz=Math.round(Math.random()*2);
layer.top = Ypos + explosionSize*Math.sin ((currStep+i*5)/3)*Math.sin(currStep/100)
layer.left= Xpos + explosionSize*Math.cos ((currStep+i*5)/3)*Math.sin(currStep/100)
if (currStep < 110){
if (ns){layer.bgColor= initialStarColor;layer.clip.width= 5;layer.clip.height=5}
else{layer.background= initialStarColor;layer.width= 5;layer.height=5;layer.fontSize=1}
}else{
if (ns){layer.bgColor= Clrs[randCol];layer.clip.width= randSz;layer.clip.height=randSz
}else{layer.background= Clrs[randCol];layer.width= randSz;layer.height= randSz;layer.fontSize=randSz}}}
if (currStep > 220){
currStep=0;
Ypos = 50+Math.round (Math.random()*WinHeight)+Yscroll;
Xpos = 50+Math.round(Math.random()*WinWidth);
for (i=0; i < sClrs.length; i++){var newIcol=Math.round(Math.random()*i);}
initialStarColor=sClrs[newIcol];
explosionSize= Math.round(80*Math.random()+100);}
currStep+=step;
setTimeout("Fireworks()",20);}
Fireworks();
</script>

вставляюего между body

  Ответить  
 
 автор: АЯ   (08.10.2010 в 21:20)   письмо автору
 
   для: nautilus2812   (08.10.2010 в 21:05)
 

Совет Вам на будущее: увидите где-нить "в инете" скрипт, где есть layer(s), знайте, что этому скрипту сто лет в обед и в современных браузерах эта фигня работать не будет.

Разбираться в хламе, написанном 15 лет назад, в том числе и для почившего в бозе Нетскейпа, никто, кроме Вас, не будет.

  Ответить  
 
 автор: nautilus2812   (08.10.2010 в 22:03)   письмо автору
 
   для: АЯ   (08.10.2010 в 21:20)
 

ну может у вас есть хороший скрипт салюта который будет работать в современных браузерах..покажите ссылку..я искал что то не нашёл

  Ответить  
 
 автор: АЯ   (09.10.2010 в 04:12)   письмо автору
 
   для: nautilus2812   (08.10.2010 в 22:03)
 

Дык в чём проблема?
Взяли, да написали.
Что-то типа такого:
<script>
function FS ()
{
if (LS > 100) {clearTimeout (t1S); t2S = setTimeout ('DS ()', ((Math.random () * 39267 % 20) + 5) * 100); return}
LS += 10; for (var j = 0; j < 16; j++) with (Slt [j]) {ss.left = (ZS + ls * LS) + 'px'; ss.top  = (YS + ts * LS) + 'px';
ss.width  = ((LS > 100) ? 1 : (LS / 15)) + 'px'; ss.height = ((LS > 100) ? 1 : (LS / 15)) + 'px'}
t1S = setTimeout ('FS ()', 130 - LS);
}

function DS ()
{
with (document.body) {var w = clientWidth - 227, h = clientHeight - 227, sw = scrollLeft, sh = scrollTop}
LS = 0; var q = 39267, v = 'aqua-blue-brown-coral-cyan-gold-gray-lime-navy-peru-pink-plum-red-snow-tan-teal'.split ('-');
for (var z = v [parseInt (Math.random () * q) % 16], j = 0; j < 16; j++) Slt [j].ss.backgroundColor = z;
ZS = Math.random () * q % w + 110 + sw; YS = Math.random () * q % h + 110 + sh; FS ();
}

onload = function ()
{
Slt = []; var q = document.createElement ('div'); with (q.style) {overflow = 'hidden'; position = 'absolute'; zIndex = 39267}
for (var j = 0; j < 16; j++) {var w = q.cloneNode (1); Slt [j] = []; Slt [j].ss = w.style;
Slt [j].ls = Math.sin (.39267 * j); Slt [j].ts = Math.cos (.39267 * j); document.body.appendChild (w)}
DS ();
}
</script>

  Ответить  
 
 автор: nautilus2812   (09.10.2010 в 12:35)   письмо автору
 
   для: АЯ   (09.10.2010 в 04:12)
 

Я ваш попробовал..он чего то неработает..очень надо..помогите..я в ява не очень..

  Ответить  
 
 автор: АЯ   (09.10.2010 в 14:22)   письмо автору
 
   для: nautilus2812   (09.10.2010 в 12:35)
 

С трудом представляю себе ситуацию, когда такое г...о кому-то "очень надо".
Перепишите первую функцию так:
function FS ()
{
if (LS > 100) {clearTimeout (t1S); t2S = setTimeout ('DS ()', 200); return}
LS += 10; for (var j = 0; j < 16; j++) with (Slt [j]) {ss.left = (ZS + ls * LS) + 'px'; ss.top  = (YS + ts * LS) + 'px';
ss.width  = ((LS > 100) ? 1 : (LS / 20)) + 'px'; ss.height = ((LS > 100) ? 1 : (LS / 20)) + 'px'}
t1S = setTimeout ('FS ()', 30);
}

  Ответить  
 
 автор: nautilus2812   (09.10.2010 в 12:41)   письмо автору
 
   для: АЯ   (09.10.2010 в 04:12)
 

а вообще то работает..просто долго почему то приходится ждать..где тут время то поубавить..

  Ответить  
 
 автор: nautilus2812   (09.10.2010 в 13:10)   письмо автору
 
   для: АЯ   (09.10.2010 в 04:12)
 

вообщем три салютика сработает и приходиться длго ждать чтобы ещё сработало..а как бы сделать чтобы они постоянно работали..или это может у меня так на компе..

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования