Почему тормозит скрипт спустя несколько событий?
при каждом клике на prev_month или prev_month вызывается calendarInit, который накладывает все больше и больше обработчиков, и КАЖДЫЙ из обработчиков вызывает calendarInit...
В общем на шестом клике количество обработчиков уже 64 штуки, и каждый из них меняет DOM.
Не делайте так.
У вас при каждом вызове calendarInit назначаются дополнительные обработчики кликов для prev_month и next_month. То есть, при каждом клике количество обработчиков у вас удваивается. Нажали один раз - к одному существующему добавился ещё один, стало два. Нажали второй раз - каждый из этих двух обработчиков добавил по ещё одному, стало четыре. После третьего клика - стало восемь, после шестого - 64. Как думаете, может это стать причиной торможения?