Further work on event listener