Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Большие блоки, Fps проседает (https://javascript.ru/forum/events/37570-bolshie-bloki-fps-prosedaet.html)

RazZzeR 25.04.2013 03:22

Большие блоки, Fps проседает
 
Доброго времени суток :thanks:
Проблема думаю не редкая, если было много обсуждений раньше, прошу уведомить, как искать.

А проблема вот в чем:
Один блок содержит сначала 50 блоков, все быстренько работает (моментальные css hover эффекты, моментальное изменение блоков через js).
Подгружаем информацию, добавляем блоки.
Теперь, допустим у нас 1000 блоков.
И дела уже совсем плохо идут, FPS падает.
И не на момент создания блоков, а и все последующее время.
На каждый блок много css кода, и js событий

Много всякого прочитал, и пришел к вам с вопросом, правда ли, что:

1. Js события.
Лучше прикреплять атрибутом к блоку, нежели через события?
например: onclick='imagination()', onmousedown='imagination()', onmoseover='imagination()'

2. Сss hover, active и подобные css изменения тоже лучше прописывать через Js события в атрибутах? :blink:
что-то вроде onmouseover="addClass(this,'hover');"

Кроме того, каждый дочерний блок главного содержит еще по 10-20 элементов :/

итак, вроде все описал, использую много hover эффектов, прикрепляю через js события, очень много дочерних элементов.
Исправлять так, как описал выше?

Спасибо.:yes:
ps: снова пишу очень уставшим, возможны ошибки (извиняюсь, исправлю)

cyber 25.04.2013 09:29

Цитата:

Сообщение от RazZzeR
1. Js события.
Лучше прикреплять атрибутом к блоку, нежели через события?
например: onclick='imagination()', onmousedown='imagination()', onmoseover='imagination()'

2. Сss hover, active и подобные css изменения тоже лучше прописывать через Js события в атрибутах?
что-то вроде onmouseover="addClass(this,'hover');"

Где вы такой бред прочитали?

RazZzeR 25.04.2013 13:02

Цитата:

Сообщение от cyber (Сообщение 247995)
Где вы такой бред прочитали?

уже и не помню, левые блоги аля "крутой программист".
Но вот я глянул, в vk так же устроено, и все впорядке вроде.


Cyber, у тебя нет рекомендаций?

cyber 25.04.2013 13:11

RazZzeR,
1. обработчики не нужно вешать через атрибуты
2. onmouseover="addClass(this,'hover');" медленнее сss hover
Оптимизоровать нужно не обработчики , а сам скрипт + желательно бы демо в студию

Aetae 25.04.2013 23:52

Да, всё прямо противоположно. =\
Может то были какие-то "вредные советы"?

P.S. А вконтакт тот ещё кладезь быдлокода, пишется студентами в анальном рабстве.

RazZzeR 26.04.2013 02:05

Цитата:

Сообщение от Aetae (Сообщение 248097)
Да, всё прямо противоположно. =\
Может то были какие-то "вредные советы"?

P.S. А вконтакт тот ещё кладезь быдлокода, пишется студентами в анальном рабстве.

бальзам на душу)
код выложу попозже, если кто-нибудь разберется - будет здорово :thanks:


Часовой пояс GMT +3, время: 06:26.