Your answer did actually help me find the right solution. I didn't need to remove everything, and changed my code to just remove the body of the page. Solved the problem of binding the events as they weren't being unbound in the first place. Sometimes the simple things are the hardest! BunnyJS does look interesting though so might take you up on the offer in the future.