Моя команда создает мобильный веб-сайт с использованием jQuery Mobile, и по мере приближения даты выпуска производительность становится все более серьезной проблемой. Одно наблюдение, которое я сделал, состоит в том, что в нашем коде много вызовов live ()
и delegate ()
; но на самом деле, насколько мне известно, мы только когда-либо используем эти методы для присоединения обработчиков событий к уже существующим узлам DOM (и будет всегда существовать в контексте нашего приложения) .
Учитывая, что live ()
и delegate ()
предназначены для обеспечения динамической привязки к узлам, которые могут появиться позже в DOM, и учитывая, что каждое из них включает обработку событий, которые достигли корневого узла документа
, мне интересно, увидим ли мы улучшение производительности, изменив эти вызовы (где необходимо) на bind ( )
вместо этого.
Я знаю, что, вероятно, мог бы протестировать это как-то сам, но у меня нет большого опыта тестирования производительности с помощью JavaScript, и я думаю, что это, вероятно, займет у меня больше времени, чтобы выяснить, чем мне было бы просто спросить сообщество. Кто-нибудь это тестировал? Есть ли измеримая разница? Или переключение этих вызовов live ()
и delegate ()
на bind ()
будет пустой тратой времени?