修改回调顺序，先修改位置，再回调函数