Refactor to use jQuery fx queue and native transition events