Fix Mobile Safari Yo-Yo (Again)

Make sure setTransitionDuration() is only called in one place. Not
the root cause.

Turns out the body height was being unset while the opening class was
still on, before the open class is added.

Use `after()` to make sure open class is added before body height is unset.