I think you're correct. His interior function is still just another closure around the original var i.
Also, this feels like piling on, but I think the original (intentionally erroneous) example would print '5' repeatedly rather than '4'. var i ends up with the value 5.
This should work okay:
Also surely DOMelement.eq(i) as opposed to DOMelement:eq(i)?