![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| Angel333 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 18.12.2009 Репутация: нет Всего: нет |
На главной страничке моего сайта скрипт работает только в Опере. Подскажите, пожалуйста, в чем проблема.
Вот сайт http://master-klass.net.ua/ |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 15 Всего: 315 |
то есть совершенно в падлу и пример скрипта запостить, и рассказать о том что должно быть, и как получается.
нате ссылку и тестите всё, выуживая, что же работает не так, как хотел автор |
|||
|
||||
| Angel333 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 18.12.2009 Репутация: нет Всего: нет |
я думал не тяжело заглянуть в исходник и в хэде посмотреть скрипт. Извините за неудобность. Вот скрипт:
<script language="JavaScript1.2"> grphcs=new Array(2) Image0=new Image(); Image0.src=grphcs[0]="mk/snow.gif"; Image1=new Image(); Image1.src=grphcs[1]="mk/snow.gif"; Amount=25; Ypos=new Array(); Xpos=new Array(); Speed=new Array(); Step=new Array(); Cstep=new Array(); ns=(document.layers)?1:0; ns6=(document.getElementById&&!document.all)?1:0; if (ns){ for (i = 0; i < Amount; i++){ var P=Math.floor(Math.random()*grphcs.length); rndPic=grphcs[P]; document.write("<LAYER NAME='sn"+i+"' LEFT=0 TOP=0><img src="+rndPic+"></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[P];//osw document.write('<img id="si'+i+'" src="'+rndPic+'" style="position:absolute;top:0px;left:0px">'); } document.write('</div></div>'); } WinHeight=(ns||ns6)?window.innerHeight:window.document.body.clientHeight; WinWidth=(ns||ns6)?window.innerWidth-70:window.document.body.clientWidth;//fantasyflash.ru for (i=0; i < Amount; i++){ Ypos[i] = Math.round(Math.random()*WinHeight); Xpos[i] = Math.round(Math.random()*WinWidth); Speed[i]= Math.random()*5+3; Cstep[i]=0; Step[i]=Math.random()*0.1+0.05; } function fall(){ var WinHeight=(ns||ns6)?window.innerHeight:window.document.body.clientHeight; var WinWidth=(ns||ns6)?window.innerWidth-70:window.document.body.clientWidth; var hscrll=(ns||ns6)?window.pageYOffset:document.body.scrollTop; var wscrll=(ns||ns6)?window.pageXOffset:document.body.scrollLeft; for (i=0; i < Amount; i++){ sy = Speed[i]*Math.sin(90*Math.PI/180); sx = Speed[i]*Math.cos(Cstep[i]); Ypos[i]+=sy; Xpos[i]+=sx; if (Ypos[i] > WinHeight){ Ypos[i]=-60; Xpos[i]=Math.round(Math.random()*WinWidth); Speed[i]=Math.random()*5+3; } if (ns){ document.layers['sn'+i].left=Xpos[i]; document.layers['sn'+i].top=Ypos[i]+hscrll; } else if (ns6){ document.getElementById("si"+i).style.left=Math.min(WinWidth,Xpos[i]); document.getElementById("si"+i).style.top=Ypos[i]+hscrll; } else{ eval("document.all.si"+i).style.left=Xpos[i]; eval("document.all.si"+i).style.top=Ypos[i]+hscrll; } Cstep[i]+=Step[i]; } setTimeout('fall()',20); } window.onload=fall //--> </script> Нужно чтобы снежинки падали во всех браузерах, а они падают только в опере |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 15 Всего: 315 |
код очень древний - основная причина. если вы писали сами, советую выкинуть ту книжку, по которой вы его изучали
проверка на нетскейп, который почил уже как несколько лет назад, не используйте эту конструкцию вот эта самая конструкция может служить корнем ошибок, не используйте её всякому элементу можно поставить id, и любой браузер сейчас поддерживает document.getElementById могут не работать вот эти все свойства innerWidth, clientWidth, pageYOffset, scrollLeft и т.п.. их очень много, разные в разных браузерах, сказать точно где что работает не могу. самое простое - проверяйте, что они выдают:
что покажет в разных браузерах п.с. кстати, используйте кнопку "код", а то ваш текст не читаемый |
|||
|
||||
| HARDMID |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 10.12.2007 Репутация: нет Всего: нет |
Не пользуйтесь устаревшим кодом. Вот более современный. И работает во всех. По крайней мере, я не жалуюсь, пусть скрипт уже 2 год пользую.
|
|||
|
||||
| 12345c |
|
|||
![]() Круглый ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 2018 Регистрация: 26.12.2005 Где: наша не пропадала ? Репутация: 57 Всего: 101 |
Каждый год эта напасть со снегом : ).
Я как-то делал, взяв за основу самый продвинутый на то время скрипт. http://forum.vingrad.ru/forum/topic-76142/view-all.html Но не дорабатывал 2 года, поэтому тоже, как пишут, не везде работает (Опера10 и ие8). -------------------- Google Code Playground - онлайн-отладка своих примеров HTML+JS без регистрации, с сохранением по URL, без кириллицы. Go |
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |