Added setTimeout fallback in case transitionend never fires