Я динамически добавляю множество полей ввода через jQuery, но страница набирает обороты при достижении 200+ входов (воспринимайте страницу как HTML-лист Excel). Это действительно хорошо, потому что этот сценарий не очень распространен. Однако, когда я динамически удаляю поля ввода со страницы с помощью функции jQuery htmlObj.remove (), страница все еще работает медленно, как если бы там были сотни входов. Есть ли способ явно освободить память в jQuery / javascript?
Мой опыт работы с этим основан на использовании Firefox. При использовании Internet Explorer страница действительно медленная с самого начала, но это совсем другая история.
Техника, которую я использую, называется делегированием событий, поскольку предполагается, что это наименее ресурсоемкий подход, по сравнению с тем, что все обработчики явно привязаны к каждому объекту на странице.
К сожалению, размытие и фокусировка событий не работают с делегированием событий, и поэтому мне нужно привязать их к каждому входу. Это может быть памятью здесь. Кроме того, в Firefox кажется, что я не могу использовать флажки для «измененных» или «ключевых [вниз | вверх» событий при делегировании событий, так как эти события флажков не всплывают в документе. Здесь привязка явно тоже.
Кто-нибудь может поделиться некоторым опытом с этим? Не могу пока показать демо, так как сайт еще не запущен.
Thx.