Почему скрипт не вставляет элемент в div?
document.querySelector(".left").appendChild(ball);
Метод getElementsByClassName возвращает коллекцию элементов, даже если он на странице один. У коллекции, соответственно, нет метода appendChild.
document.getElement<b>s</b>ByClassName("left").appendChild(ball);
вы получаете все элементы с классом 'left' . 
Либо пробегитесь each'ом
либо обратитесь к конкретному document.getElementsByClassName("left")[0].appendChild(ball);