spinner now stays up until DOM updates are done