Javascript-форум (https://javascript.ru/forum/)
-   Ваши сайты и скрипты (https://javascript.ru/forum/project/)
-   -   Посмотрите на веб окна (https://javascript.ru/forum/project/7250-posmotrite-na-veb-okna.html)

Kolyaj 03.02.2010 14:43

Цитата:

Сообщение от limonad
Вы сами это советовали. Уменьшить количество элементов.

Ох ты ж господи. Ещё раз повторяю, был вопрос "Много элементов?", был ответ "Да, можно меньше". Я ничего не советовал. С учетом id-шников, inline-стилей и ссылок с псевдо-адресом javascript:, количество элементов не главная ваша проблема. Оно может и проблемой-то быть перестанет.

limonad 03.02.2010 17:22

На иконках убрал id, inline-стили и ссылки с псевдо-адресом javascript. Вот что получилось:
<div style="z-index: 210; left: 10px; top: 50px; background-image: url(http://rss2banner.com/desktop/img/kwrite.png);" class="IconCSS" title="Блог">
 <a>Блог</a>
</div>

что-то все также и дальше тормозит.

события так назначаются:
obj.onmouseover = function() { this.onmousedown = IsDown;} может из-за этого? addEventListener/attachEvent - лучше будет?

Kolyaj 03.02.2010 17:30

Цитата:

Сообщение от limonad
что-то все также и дальше тормозит.

У меня иконки не тормозят.

Цитата:

Сообщение от limonad
addEventListener/attachEvent - лучше будет?

Будет лучше, но не из-за скорости.

А вы я так понимаю вылечили "баг" IE? Плохое решение.

ZoNT 03.02.2010 17:32

Эвалы можно всё-таки убрать, прогнать весь код профилировщиком, оптимизировать все медленные функции.
Окна при перетаскивании жутко тормозят на моём двухъядерном проце...
Вероятнее всего, что из-за прозрачной картинки при перетаскивании.
Я уверен, что окна на дивах будут работать быстрее (у меня есть пример, который работает без тормозов, но показать его я не могу из коммерческих соображений).

limonad 03.02.2010 18:16

Цитата:

Сообщение от Kolyaj
А вы я так понимаю вылечили "баг" IE? Плохое решение.

чем плохое?

limonad 03.02.2010 18:17

ZoNT,
верю. сначала с иконками надо разобраться.

Kolyaj 03.02.2010 18:21

Цитата:

Сообщение от limonad
чем плохое?

Стоит мне при перетаскивании иконки чуть выскочить за пределы экрана, как иконка "выскальзывает". Она не должна отпускаться, пока я кнопку мыши не отпущу.

B~Vladi 03.02.2010 18:22

Скорость рендеринга зависит от:
1. аппаратной части (процессор, видеокарта)
2. загруженности процессора и оперативной памяти
3. браузера (движок, дополнительные плагины и расширения)
4. сложности DOM-дерева и алгоритма JS-кода.

Оптимизировать мы можем только четвёртый пункт, что само по себе мало для существенной оптимизации. Учитывая, что событие mousemove во всех браузерах происходит очень часто (настолько, насколько позволяют первые 3 пункта), это не может не напрягать процессор (т.к. все расчеты лежат именно на нем, а не на видеокарте) и является узким местом в любом интерфейсе. Поэтому необходимо найти те решения, которые оптимизируют DOM, а так же программный код. Этим я и предлагаю тебе заняться самому, а не ныть здесь.

Kolyaj 03.02.2010 18:30

Цитата:

Сообщение от B~Vladi
Скорость рендеринга зависит от:

Как раз только что перечитывал http://clubs.ya.ru/yacf/replies.xml?item_no=338 :)

limonad 03.02.2010 19:31

Цитата:

Сообщение от Kolyaj
Стоит мне при перетаскивании иконки чуть выскочить за пределы экрана, как иконка "выскальзывает". Она не должна отпускаться, пока я кнопку мыши не отпущу.

Это реализовано специально. Вышел за окно - значит отпустил кнопку. А то выкинешь ее и забудешь где-то там в небытии. Это не обязательно, и именно это не есть собственно решением для бага IE о котором упоминали. Решение бага в том, чтобы проверять при drag состояние клавиши. Если она отжата, то выполняем вашу логику отпускания кнопки. Хорошее оно или нет судить вам.


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