update by LJW for add some animation