Зачем вешать обработчики на все элементы?
Вешаем на элемент родитель, задаем каждому новосозданному диву пользовательский атрибут вида data-*
pole.onclick = function(event) {
if (!event.target.hasAttribute('data-*')) return; // проверяем туда ли попал клик
var elem = event.target;
elem.style.background=getRandomColor()
};
Вуаля, обработчик один, но обрабатывает все дивы.