PDA

Просмотр полной версии : Баннер ест системные ресурсы


qwr
11.10.2007, 17:06
Здравствуйте. Очень нужна ваша помощь. Сам немогу разобратся =(
Я тут сделал баннер, и использовал один интересснй урок. Но я добавил в скрипт несколько рандомнх переменных, что бы блики были в разное время, и камешки по разному лежали. И вроде все здорово работает. Но как оказалось НЕТ. Чем долше отображается страница с баннером, тем больше она жрет системных ресурсов. И примерно через 10 минут комп полностю виснет =(

Помогите пожалуйсто разобратся, где я напортачил...
Тут готовй баннер: http://salonletoile.info/banner.html
Не бойтесь, как зкрываешь с ним страницу ресурсы жратся перестают =)

К посту я присоеденил исходник:

Ведьмак
11.10.2007, 18:05
:) скорее всего вы просто аттачите все новые и новые мувики бликов на сцену и не удаляете их после того как они "отработали"... в результате их становится так много, что они вешают систему..

PS: сделайте сглаживание на шрифт телефона... и отцентрируйте его что ли ? :)

qwr
11.10.2007, 19:57
Не может быть.
У меня все в 1м кадре.
Аттачится мувиклип 'ball' в котором наодится картинка брильянта и мувиклип с анимацией блика. Эта анимация проигрывается с рандомной задержкой.

Тоесть по идее аттачится циклично оно не может... Я проверил. В эту функцию поставил:
trace ("Аттач #"+aw);
aw++;
Забив исходную aw=1;

Протрейсилось ровно 25 аттачей, столько же, сколько и алмазов...

ЗЫ: Но я вообще то новичек в этом всем. И наверняка совсем с другого конца смотрю на проблемму =( Помогите плиз...

iNils
11.10.2007, 20:10
Вы бы побольше табуляции в коде поставили, а то как то мало.

qwr
11.10.2007, 20:15
Вы бы побольше табуляции в коде поставили, а то как то мало.
Спасибо за потрясающий совет! Уже поправил. Тока моему баннеру это слабо помогло...

iNils
11.10.2007, 20:22
Модераторы на только отвечают или не отвечают на вопросы, но и следять за порядком. Крайне плохо это не знать и еще глупо это не понимать.

qwr
12.10.2007, 16:48
iNils помоги пожалуйсто. Сам понимаеш, баннер готов - а сдать немогу =(

Если вдруг в Минске будеш с меня пиво... :drinks:

iNils
12.10.2007, 16:55
Вот этот код явно поедает ваши ресурсы.
setInterval(function () {
play ();
}, random (5000));
Объясняю почему. setInterval выполняется не раз и не два, а постоянно пока вы не отчистите его с помощью clearInterval. Но беда в том, что этот код срабатывает каждый раз когда воспроизведение доходит до первого кадра. А это значит, что к первому setInterval прибавлятся второй setInterval, потом еще и еще, что в итоге привод к тормозам.
Замените setInterval на setTimeout и проверьте результат, возможно причина не только в этом.

qwr
12.10.2007, 17:37
Спасибо ты гений! Все отлично!

Буду должен.

А что это за секретный SetTimeout ? Справки по нем нету. Синим не подсвечивается... Но работает =))

Ostgur
12.10.2007, 18:11
это "nice undocumented feature", как говорит google, которая выполняет функцию по истечении времени.

qwr
12.10.2007, 18:56
Подскажите еще кое что... В зоне где эти бриллиантики лежат почему то не срабатывает кнопка с сслыкой.
Как нибудь можно сделать, что бы кликая в этой зоне мышкой переходили по сыслке?

Заранее спасибо.

Ostgur
12.10.2007, 19:18
только замени, чтоб люк с интервалом не было, потому как я использовал файл с первого поста.

qwr
12.10.2007, 20:33
только замени, чтоб люк с интервалом не было, потому как я использовал файл с первого поста. Не пашет почему то. При клике на зону с камушками ничего не происходит.

Я присоеденил последний исходник.

Ostgur
12.10.2007, 20:48
всё открывается, у тебя глюк какой-то, залей куда-нибудь и проверь, открывает http://salonletoile.info/

qwr
12.10.2007, 21:14
Не работает. http://salonletoile.info/banner.html

Может ты по ошибке не тот архив на форум залил?

Ostgur
12.10.2007, 21:26
Вот...

qwr
13.10.2007, 01:50
Спасибо, все работает! Я в долгу...