I>эээ ребяты.... а зачем это все? расскажите? ну мне просто интересно нахрена уменьшать скорость и так медленного js? или вы хотите сказать что синтаксис этой библиотеки проще чем стандартный? не, действительно реально ктото это использует и оно ему удобно?
Я это реально пользую и это мне реально удобно.
I>обычно у программистов уже есть свой оверлей со всеми стандартными функциями, а переделывать синтаксис орбражений в DOM зачем? XPath? реализуется если надо простым регспом, причем на стандартном сайте имхо такие извраты абсолютно не зачем.
Там не только XPath, там и CSS селекторы. Которые во много раз удобнее, чем getElementById + getElmentsByTagName
I>Деревья, табы, ajax? обычно это стандартные контролы на стандартной обвязке там где оно надо — проинклюдили скрипт вызвали функцию и все.
Что такое стандартные контролы в стандартной обвязке?

Некоторые плагины приведены, как примеры того, что может являться плагином в jQuery
I>Я не критикую
мне просто интересно — реально удобно чтоли? вот не понимаю я зачем изобретать все вермя велосипед. использовать различные СВОИ шаблонизаторы вместо xslt+xml, использовать фреймворки для JS. зачем?
Что за свои шаблонизаторы? В статье об этом ни слова
Теперь развернутый ответ.
Что такое фреймворк? Это набор функций, облегчающий выполнение каких-то действий. Каждый раз, когда программист говорит "обычно у программистов уже есть свой оверлей со всеми стандартными функциями", это надо читать так: "а у нас уже свой фреймворк используется".
Что такое jQuery? Это невероятно маленький (последняя версия — 20KB в сжатом виде) и один из самых быстрых доступных JS-фреймворков. То есть jQuery предлагает набор функций, облегчающих жизнь программисту.
Например, вот некоторые из проблем, вставшие перед разработчиками и решенные на jQuery:
http://rsdn.ru/forum/message/2589354.aspxАвтор: Mamut
Дата: 18.07.07
http://www.rsdn.ru/forum/message/2319225.aspxАвтор: Mamut
Дата: 25.01.07
(сравни объем кода на голом JS и на jQuery)
http://www.rsdn.ru/Forum/?mid=2508833Автор: Mamut
Дата: 31.05.07
http://www.rsdn.ru/Forum/?mid=2321225Автор: Mamut
Дата: 26.01.07
http://www.rsdn.ru/Forum/?mid=2334773Автор: Mamut
Дата: 05.02.07
и т.п.
Эти всё короткие примеры, но они показывают, что даже самые непонятные запросы (чего, например, стоит вот
этотАвтор: Mamut
Дата: 13.07.07
) на jQuery решаются легко и весело. Потому что набор функций в jQuery гениален до неприличия.
Пример. Код используется у меня в
примерах по jQuery (надо бы их обновить...):
// находим все элементы с class="ex" (это ссылки)
// и присваиваем им в onclick функцию
$(".ex").click(
function() // при клике по ссылке с class=".ex" будет вызвана эта функция
{
var a = $(this);
// показываем элемент с id="loader"
$("#loader").show("fast");
// находим элемент с id="example"
$("#example")
.animate({height: "hide"}, "fast") // прячем его
.find("#anchors").empty() // в нем находим элемент с id="anchors" и очищаем его контент
.end() // возвращаемся к элементу с id="anchors"
.find("div").remove() // находим все div'ы (внутри элемента с id="example") и удаляем их
.end() // возвращаемся к элементу с id="anchors"
.animate( // прячем (опять? видать баг в коде :) )
{height: "hide"}, // схлопываем по высоте
"fast", // быстро
function() // по завершении вызываем функцию, в которой
{
// берем значение из аттрибута href кликнутой ссылки
// и подгружаем с этой ссылке контент с помощью ajax'а
$.get(a.attr("href") + "?" + Math.random(), handleResponse);
}
);
return false;
}
);
Этот пример показывает некоторые проблемы, которые на голом JS решаются неудобно:
// находим все элементы с классом ex и присваиваем им onclick
$(".ex").click(...
// аналог
var a = getElementsByTagName("a");
for(i = 0; i < a.length; i++)
{
if(a.className == "ex")
{
a.onclick = ...
}
}
Или:
// находим все элементы div внутри элемента с id="example"
$("#example").find("div")
// аналог
?????????
Причем такие проблемы возникают на самом деле чаще, чем кажется. Просто работа с чистым JS или слабым фреймворком заставляет заранее избегать таких постановок задач. С jQuery становится нестрашен практически по-любому сформированный документ.
Например, один мой товарищ получает списки цен в виде HTML. Ему надо выводить сумму. Решение? Простейше на jQuery. См.
http://dmitriid.com/jquery — "Excel руками". Решение занимает четыре строчки. Для того, чтобы его написать, мне понадобилось меньше пяти минут. И так — во всем