2010-09-03 2 views
0

Это своего рода «против моей религии», чтобы опросить состояние, используя timeOut или подобную технику. Я бы скорее обработал событие, чем постоянный поиск доказательств того, что произошло событие.Есть ли реальные риски для непрерывного опроса?

Но, из-за пятнистой поддержки для события onHashChange, было предложено использовать плагин, который опросит свойство window.location каждые 50 мс.

Есть ли реальные риски для этого (например, расходы на обработку)? Или я просто суеверен?

+1

Лучший способ найти ответ - проверить производительность с помощью и без опроса, в разных браузерах и определить, стоит ли вам поразить производительность. – eyelidlessness

ответ

0

Поскольку обычная практика опроса window.location собственности, я считаю, что нет реального риска. Когда мне нужно было его реализовать, я узнал, что такой опрос используется в gmail Google и «переводить».

0

Самая большая проблема заключается в том, что ваш контрольный код window.location будет выполнять 20 раз в секунду, что кажется излишним.

Возможно, вы захотите протестировать его на IE, чтобы увидеть, какое замедление у него есть, поскольку IE будет самой большой проблемой с чем-либо связанным JS.

1

Мы используем setInterval из 120ms проверить хэш-ключа.
Хотя это одностраничное веб-приложение, которое в значительной степени зависит от javascript, опрос вообще не влияет на производительность.

Я не пробовал IE6 и IE7, но все в порядке на IE8 и других современных браузерах.

Значение в 120 мкс пришло путем качественного тестирования.
Я играл с шагами по 20, используя кнопки назад/вперед.
Я не мог почувствовать разницу для значений ниже 120. Хотя я мог чувствовать растущее отставание от значений более 120.

Но это, вероятно, зависит от вашего приложения, время опроса должно иметь значение относительно общего время отклика приложения.

Смежные вопросы