![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| MalerGSG |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 16.12.2009 Где: Ростов-на-Дону Репутация: нет Всего: нет |
Работу этого скрипта Вы может просмотреть на сайте: www.tscenter.globalsitegroup.ru
Он отвечает за "прокрутку" блоков посреди страницы, я не знаю что сделать чтобы облегчить учесть процессора. При работе одного только браузера загрузка цп скачит от 70 до 90 процентов. Пытался поставить задержку загрузки не помогает! В распараллеливании серверов смысла нет он тормозит систему даже с одним юзером на сайте. Вобщем HELP ME! Вот собственно сам скрипт. <script language="javascript"> var run=0; var xx=0; var wid; var w; var timeout_id; var timeout_id1; var MouseX; window.onload = function(){ wid=window.screen.width; w = (wid-758)/2; //var l = document.getElementById("leftt"); //document.getElementById("rightt").style.width = w + "px"; //rightt = document.getElementById("rightt"); //rightt.width = w + "px"; //l.style.width = w + "px"; //document.getElementById("left_navi").style.marginLeft = w - 32 + "px"; //left.width = w + "px"; run=1; MouseX = 200; setSpeed(MouseX,1); } function setRight(){ xx = xx - 1 ; document.getElementById("cont_m").style.marginLeft = xx + "px"; if (xx<-1283){ xx = -84; } if(run==1){ } } function getResim(ev){ navname = navigator.appName; if (navname=="Netscape"){ getMouseX(ev); }else{ mousePageX(); } } //for mozilla function getMouseX(ev){ //clearTimeout(timeout_id); //clearTimeout(timeout_id1); MouseX = ev.pageX; //setSpeed(MouseX,1); } //for IE and opera function mousePageX() { //clearTimeout(timeout_id); //clearTimeout(timeout_id1); MouseX = event.x; //setSpeed(MouseX,1); } function setSpeed(mouseX,runn){ if (runn==1){ var hcenter = 379; if (MouseX>hcenter){ var speed = (MouseX - hcenter)/25; speed = speed.toFixed(0); run=1; timeout_id1 = setTimeout(" setRight()",400); } if (MouseX<hcenter){ //alert(mouseX); var speed = (hcenter - MouseX)/25; speed = speed.toFixed(0); run=1; timeout_id1 = setTimeout(" setLeft()",400); } clearTimeout(timeout_id); timeout_id = setTimeout(" setSpeed(MouseX,1)",10); } } function setLeft(){ xx = xx + 1 ; //alert(speed); document.getElementById("cont_m").style.marginLeft = xx + "px"; if (xx>-84){ xx = xx-1200; } if(run==2){ } } function setrun(){ run =1; } function setstop(){ run =0; } </script> </head> Что сделать чтобы оставить этот эффект но при этом снять нагрузку с ЦП. С уважением Александр! |
|||
|
||||
| IDVsbruck |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 778 Регистрация: 12.11.2006 Репутация: 8 Всего: 22 |
Ссылка не работает.
Понятно, что ты грузишь проц частым обращением: timeout_id = setTimeout(" setSpeed(MouseX,1)",10); Возможно, надо подумать над тем, чтобы использовать обработчики событий при попадании в зону. |
|||
|
||||
| MalerGSG |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 16.12.2009 Где: Ростов-на-Дону Репутация: нет Всего: нет |
А что-нибудь по конкретней? Я новичёк в JS.
|
|||
|
||||
| Nanna |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 22.12.2009 Репутация: нет Всего: нет |
ага
onMouseOver и onMouseOut а может быть более эффективно было бы написать скриптик на флэше?? или аякс использовать |
|||
|
||||
| MalerGSG |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 16.12.2009 Где: Ростов-на-Дону Репутация: нет Всего: нет |
|
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |