一些event和listener的修改