Как правильнее вешать события?
Зависит. Общее поведение и динамическое добавление новых элементов - однозначно делегирование. В других случаях нужно смотреть есть ли в этом смысл, так как делегирование больше нагружает приложение, дергаясь на каждый прописанный паренту евент.