Какие преимущества у jQuery перед другими библиотеками JavaScript? - PullRequest
19 голосов
/ 16 сентября 2008

Я пытаюсь убедить тех, кто устанавливает стандарты в моей текущей организации, что мы должны использовать jQuery, а не Prototype и / или YUI. Какие убедительные преимущества я могу использовать, чтобы убедить их?

Ответы [ 18 ]

24 голосов
/ 16 сентября 2008

3 основных преимущества jQuery:

  • его легкий вес по сравнению с другими фреймворками javascript
  • имеет широкий спектр плагинов , доступных для различных особых нужд
  • Разработчику легче изучить jQuery, так как он использует знакомый синтаксис CSS. JQuery Javascript для дизайнеров
14 голосов
/ 16 сентября 2008

Я бы сказал, что моими основными причинами использования JQuery являются:

  • Большое сообщество разработчиков и множество плагинов.
  • Это на радаре Microsoft, и они добавляют поддержку некоторых плагинов и возможности отладки.
  • Очень хорошая документация для сторонней библиотеки.
  • Lightweight.
  • Возможности цепочки очень мощные.
6 голосов
/ 16 сентября 2008

Это самый хорошо продуманный язык, который вы найдете, - он почти интуитивен.

Хотите ширину элемента?

$('#something').width();

Хотите захватить элемент, скрыть его, изменить цвет фона и вернуть его обратно?

$('#something').hide().css('background', 'red').fadeIn();

Как насчет чередования таблиц в IE (при условии, что класс hover определен)?

$('table tr').hover(function() {
  $(this).addClass('hover');
});

Такая быстрая и бездумная работа действительно помогает продавать jQuery.

6 голосов
/ 17 сентября 2008

Вот более свежий тест скорости, чем приведенный выше. В последний раз, когда я запускал его, самым быстрым был додзё, за которым следовали jQuery, Mootools, Prototype и, наконец, YUI. Обратите внимание, что я запустил его в Firefox 3, и скорости варьируются в зависимости от браузера, поэтому протестируйте его сами.

Тест скорости скольжения

6 голосов
/ 16 сентября 2008

По моему мнению, после короткого пробного использования Prototype, а затем пробования и любви к jQuery: API jQuery чувствует себя намного чище и продуманнее. Джон Резиг, создатель / архитектор jQuery, действительно знает свое дело, и это проявляется в дизайне jQuery, а также в других впечатляющих проектах JavaScript, частью которых он был.

Целые понятия запросов и цепочки очень хорошо сочетаются с DOM-манипуляциями, что, по-видимому, является основной причиной того, что люди используют библиотеки JS. Электронная документация просто фантастическая. Производительность кажется очень хорошей. Вся библиотека помещается в относительно небольшой пакет, учитывая его возможности. Архитектура плагина также очень хороша для расширяемости.

Честно говоря, я не пробовал YUI, поэтому я не могу комментировать это. Я знаю, что это довольно обширная библиотека, хотя вы можете загружать / использовать только определенные ее модули.

4 голосов
/ 16 сентября 2008

Один аргумент в пользу этого:

популярность + расширяемость

1) Если кому-то нужно сделать X с JavaScript, возможно, это было сделано с помощью jQuery
2) Если было сделано много, вероятно, есть плагин, если не родная поддержка

И если он действительно уникален, то многие люди ответят на ваш вопрос в SO или где-либо еще.

4 голосов
/ 16 сентября 2008
  1. Это очень мало, особенно при минимизации, и предлагает много в базовой библиотеке.

  2. Его также легко расширить, и в нем есть активное сообщество.

  3. Наконец, это чрезвычайно легко учиться; как только вы освоите основные понятия, вы можете сразу приступить к написанию сложных решений.
4 голосов
/ 16 сентября 2008

Одним из преимуществ jQuery является большое сообщество, разработавшее множество плагинов.

3 голосов
/ 29 июля 2010

Вы можете перейти по по этой ссылке , чтобы узнать больше о jQuery, зачем его использовать и в чем его преимущества.

2 голосов
/ 28 ноября 2011

Ну ...

Сначала вы должны подумать, почему вы считаете JQuery хорошим, но вы не знаете, какие аргументы использовать, чтобы убедить другого. Возможно, вам следует сначала убедить себя. ;)

В любом случае, jQuery - это просто еще один фреймворк. Вы должны использовать то, что он делает лучше всего. Если вы собираетесь использовать его только для базовой обработки DOM, забудьте об этом! научитесь правильно пользоваться js, и все будет в порядке!

Рассмотрим этот HTML:

<body>
<div style="width: 400px; height: 400px; background-color: red">
<div style="width: 400px; height: 400px; background-color: red">
</div>

<script type="text/javascript">

function test1 (){
document.body.innerHTML = ""

var div = document.createElement("div");

document.body.appendChild(div);

$(div).width("400px").height("400px").css("background-color", "red");
}    

function test2 (){
document.body.innerHTML = ""

var div = document.createElement("div");

document.body.appendChild(div);

$(div).width("400px");
$(div).height("400px");
$(div).css("background-color", "red");
}

function test3 (){
document.body.innerHTML = ""

var div = document.createElement("div");

document.body.appendChild(div);

div.style.width = "400px";
div.style.height= "400px";
div.style.backgroundColor = "red";
}

function test4 (){
    document.body.innerHTML = ""

    var div = document.createElement("div");

    document.body.appendChild(div);

    div.setAttribute("style", "width: 400px; height: 400px; background-color: red");
}

</script>
</body>

Поместите его в файл hml с jquery, доступным в <head>

Затем откройте firebug и запустите этот код: console.profile (); test1 (); console.profileEnd ();

console.profile();
test2();
console.profileEnd();

console.profile();
test3();
console.profileEnd();

console.profile();
test4();
console.profileEnd();

Смотрите результаты для себя!

Но если вы хотите выполнить некоторые сложные манипуляции с DOM, которые потребуют от вас сделать несколько циклов или выяснить, что элементы в DOM соответствуют некоторым критериям, вы можете рассмотреть возможность использования jQuery, поскольку он реализует эти процедуры для вас.

В любом случае, имейте в виду, что нет ничего лучше, чем управлять DOM с помощью ссылок, которые вы храните в своем коде. Это быстрее и более читабельно для других. Google "JS Best Practices".

Я использую jQuery для сложных вещей, которые мне потребовалось бы слишком много времени для реализации, и в результате я получил бы что-то вроде кода jQuery. В этом случае имеет смысл использовать его!

Веселись!

...