An angular directive for event delegation