Prevent handlers from being repeatedly called because js has weird object lifetimes on 'this'