bind elements to listen to custom events
don't use a separate event listener in map directive