codepo8 at gmail.com
Tue Feb 10 19:10:08 CST 2009
Jay Turley wrote:
> Hi, all-
> Currently, as I iterate over a list of items retrieved from the
> database, then insert them into the DOM, I am attaching click handlers
> to the displayed elements as closures which contain the item IDs from
> the database in their execution contexts.
> However, as the list of items grows (and it will continue to do so), I
> am wondering if I should move to event delegation for processing the
> clicks to avoid having umpty-hundreds of closures floating around at
> any given time. This requires unique ids for each element which can be
> plucked out for use by the event handlers (think the new live()
> functionality from jQuery 1.3).
> I'm wondering if anyone has looked into the performance issues of
> closures versus event delegation (obviously the event delegation is
> going to use less memory), and if so what tips or comments you might
> Thanks a ton!
> -Jay Turley
Event Delegation is the way to go. If you do any DOM access in your
closures IE has a lot of memory leaks. It is also much easier for you to
deal with the event handling as you can listen to any element.
More information about the thelist