Ajax может запросить просто файл с сервера. Например json со списком страниц.
Но если страницы статичные, можно вообще без аякса обойтись, тупо вписав страницы в html. Как вариант можно использовать input + datalist + немного js
kally, Вы не поняли.
getElementsByClassName возвращает не один элемент, а коллекцию (HTMLCollection). Если упростить, то вы пытаетесь сделать примерно так
var items = [];// массив!
items.onclick = function(){
проще говоря, по результату вызова getElementsByClassName('aaa') нужно пробежаться циклом и на каждый элемент навесить слушателя события.
Вы заблуждаетесь. .click() - это просто алиас для .on('click')
Абсолютно то же самое.
Другое дело, если говорите о делегировании .on('click', '.selector', function(){}). Но вы об этом не упоминаете.