Илюша Прокопьев: Посмотрел ваш пример. Следовало с этого начинать, с выкладывания кода.
Там у вас что-то странное. Зачем вы повторно навешиваете обработчики клика?
Скорее всего вам нужно просто делегировать прослушку кликов родителю. Сейчас набросаю пример.
Platton: Нет, я не говорю что вы использовали глобальные переменные. Но это один из способов передать что-то в конструктор не используя параметры.
Я понимаю что это дичь, но если по каким-то причинам параметры передавать нельзя...
1. Для этого кода не нужен jQuery.
2. Или вы запускаете этот код до загрузки страницы, или у вас отличается id кнопки.
3. Почему-то две точки в строке button..addEventListener
4. Там всего 13 строк, что за ошибка может быть на четырнадцатой?