jQuery vs Mootools

12.5.2011 - 1852 просмотрa ;)

После заметки об одновременном использовании jQuery и Mootools мне поступила сотня писем с вопросами о том, а что лучше, гор мусора в интернете видимо недостаточно, нету выжимки, поэтому я решил не медлить и рассказать моим читателям о том какой фреймворк лучше.


jQuery – это штуковина больше пригодная для сокращения кода, на самом деле можно упростить себе жизнь используя jQuery, однако MooTools более направлен в сторону классовости. Все его сокращения похожи, однако они имеют некую общность и целостность, нежели это реализовано в jQuery. Поэтому пиксельным фанатам будет ближе Mootools, а быстрокодерам ближе jQuery.

У jQuery  всего больше. Комьюнити, литературы, плагинов и туторов и фанатов. Это надо признать, все потому что с jQuery легко, легче чем с Prototype и Mootools и другими. Я не хочу вас сразу отбросить от Moo, у последних своя специфика. Это любимый ребенок, избалованный, у которого все прилизано.

MooTools расширяет JavaScript, jQuery – дополняет. Как это вам объяснить-то по русски.. Это как например Moo добавляет методы к стандартным объектам, а jQuery  все вретит вокруг собственных объектов не трогая внешние.

Чтобы понять разницу наглядно привожу пример одинакового кода Hello World на jQuery

$(document).ready(function() {
    $("a").click(function(event) {
        alert("Thanks for visiting!");
    });
});
код на Mootools Hello World
window.addEvent('domready', function() {
    $$('a').addEvent('click', function(event) {
        alert('Thanks for visiting!');
    });
});
Еще один пример, который вас может посадить на кол, jQuery:
$(document).ready(function() {
    $("#orderedlist li:last").hover(function() {
        $(this).addClass("green");
    },
    function() {
        $(this).removeClass("green");
    });
});
Mootools:
window.addEvent('domready',function() {
    $$('#orderedlist li:last-child').addEvents({
        mouseenter: function() {
            this.addClass('green');
        },
        mouseleave: function() {
            this.removeClass('green');
        }
    });
});

Отсюда надо понять что MooTools чутку низкоуровнее, но это дает приемущество, например все методы jQuery очень легко реализуются на Moo, и тем более можно сделать свои методы еще легче и прощще, именно так как надо вам. На jQuery лепить методы как на MooTools смысла нет.

В качестве итога напишу, что попробовать надо оба. А вы что думаете ?

Статьи из раздела, Видеочат рулетка