Дмитрий Маринин: два замечания:
1. Не стоит усложнять код замыканиями и модулями - вы же видите уровень автора, первым делом он начнет спрашивать зачем точка с запятой в самом начале.
2. Кэшировать $button большого смысла нет - она используется только при навешивании обработчика (а внутри обработчика можно заменить на this).
1. Не стоит навешивать обработчики через onclick, лучше использовать addEventListener, мы, все-таки, не в 2001 году живем.
2. var t.
3. Из-за странных пробелов в начале класса код не будет работать так, как ожидается.
4. Код не рассчитан на то, что у элемента могут быть и другие классы.
5. Названия классов с большой буквы - фу.
6. Непонятно зачем вообще ставить обработчик на document, в вопросе об этом ничего не сказано.
Саша: вот именно, это основа, которую должны знать все. И если автор вопроса этого не знает, то ему надо книги читать, а не просить, чтобы здесь за него все сделали.
Не стоит фокусироваться на ноде, принципы построения апи одинаковы для всех ЯП. Я только книги могу посоветовать, у Oreilly есть несколько хороших книг про архитектуру апи.
sergafon: есть два пути:
1. Хороший - забить в поисковик event.preventDefault, разобраться в том, что это такое, получить новые знания
2. Плохой - воспользоваться кодом, который я написал в ответе.
SimpleShadow: вам же Денис Инешин прямо пример привел, все расписал. Вы хоть немного пытались вникнуть самостоятельно в то, что мы вам тут ответили? Что такое Developer Tools и дебагер вы понимаете? Если не понимаете, почему бы не загуглить?
1. Не стоит усложнять код замыканиями и модулями - вы же видите уровень автора, первым делом он начнет спрашивать зачем точка с запятой в самом начале.
2. Кэшировать $button большого смысла нет - она используется только при навешивании обработчика (а внутри обработчика можно заменить на this).