Поскольку вы новичок в разработке Javascript, я постараюсь с соответствующими примерами.
Вы можете голосовать за или против на StackOverflow. Ваше голосование отправляется на сервер, и оно там записывается. Если бы не AJAX (и некоторые другие методы), всю страницу нужно было бы обновить для этого одного действия. AJAX решает проблему асинхронного взаимодействия с сервером без полной перезагрузки страницы.
jQuery - это библиотека, которая обеспечивает удобный доступ к распространенным задачам Javascript, таким как манипулирование DOM, обработка AJAX и т. Д. JQuery также скрывает различия в браузерах и обеспечивает согласованный интерфейс для конечного пользователя. Чтобы проиллюстрировать эти два момента, посмотрите эти примеры:
поиск всех элементов div на странице
// Javascript
var divs = document.getElementsByTagName("div")
// jQuery
$("div")
добавление обработчика события нажатия кнопки (иллюстрирует различия в браузере)
В чистом Javascript лучше всего создать кросс-браузерный метод для добавления событий, так как вам точно не захочется писать этот код каждый раз. Источник - http://www.scottandrew.com/weblog/articles/cbs-events
function addEvent(obj, evType, fn, useCapture){
if (obj.addEventListener) { // standards-based browsers
obj.addEventListener(evType, fn, useCapture);
return true;
} else if (obj.attachEvent) { // IE
var r = obj.attachEvent("on"+evType, fn);
return r;
} else { // some unknown browser
alert("Handler could not be attached");
}
}
После настройки (только один раз) вы можете добавлять события к любым элементам, используя эту функцию.
// Javascript
var button = document.getElementById("buttonID");
addEvent(button, "click", function() { alert("clicked"); }, false);
// jQuery (contains code similar to above function to handle browser differences)
$("#buttonID").click(function() { alert("clicked"); });
AJAX является частью Javascript, а не отдельной технологией сам по себе. Вы бы использовали AJAX, чтобы избежать полного обновления страницы, когда вам нужно отправлять / получать данные с сервера.
jQuery, MooTools, Dojo, Ext.JS, Prototype.JS и многие другие библиотеки предоставляют обертку вокруг Javascript, чтобы абстрагироваться от различий между браузерами, и предоставляют более простой интерфейс для работы. Вопрос в том, хотите ли вы сделать всю эту переделку самостоятельно. Если вы не совсем уверены, какую переработку вам может понадобиться, изучите примеры простых задач на Javascript, таких как вызовы AJAX , манипулирование DOM , обработка событий , наряду с абстрагированием от причуд браузеров и сравнением их с примерами с эквивалентами в библиотеках, таких как jQuery, может быть хорошим началом.