Aaron Newton hat sich der Mutter aller Fragen angenommen und eine komplette Website dafür eröffnet: jQuery vs MooTools. Er ist zwar selbst Mootools-Entwickler, erhebt aber ausdrücklich den Anspruch, einen fairen Vergleich anzubieten – und soweit ich das beurteilen kann, ist das auch der Fall.
The question isn't about which framework is better or worse. It's which one of these things above do you want to do? These two frameworks just aren't trying to do the same things. They overlap in the functionality they provide, but they are not trying to do the same things.
Sein Fazit: Mit jQuery beackert man DOM, mit Mootools programmiert man Javascript. Und das ist auch gut so.
P.S.: Die richtige Antwort lautet natürlich „Mootools“
Kommentare (24)
Andreas ¶
19. Mai 2009, 09:18 Uhr
Und dazu noch die wichtige Frage ob JavaScript besser auf Mac oder PC "gecodet" werden sollte, in Vi oder Emacs? Flamewars sind laaaaaaaaaaaaaaangweilig (und unproduktiv)!
Peter ¶
19. Mai 2009, 09:20 Uhr
Flamewar? Wo?
Worf ¶
19. Mai 2009, 09:27 Uhr
"No framework; just plain old JS."
Der Satz gefällt mir am Besten, ultraflexibel, unabhängig und reicht für die vielen kleinen Dinge meist aus.
Wenn ich mich für eins entscheiden müsste, hm, keine Ahnung, ich find bei jQuery die Syntax hübscher so vom ersten Eindruck.
Christian ¶
19. Mai 2009, 09:44 Uhr
Zitat Andreas:
Ja, da muss ich dir recht geben. Hier wird gerne mal der Troll gefüttert... schade eigentlich. Sind solche Beiträge doch eigentlich schon bewusst darauf ausgelegt das sich hier 2 Fronten gegenseitig anfeuern, gerade weil dieser letzte Satz ja unbedingt kommen musste, und man nicht einfach mal Wertungsfrei etwas stehen lassen kann.
Peter ¶
19. Mai 2009, 10:01 Uhr
Die Möglichkeit, dass der letzte Satz mit einem Hauch von Scherzhaftigkeit gedacht ist, ist natürlich völlig ausgeschlossen!
Felix de Ruiter ¶
19. Mai 2009, 10:09 Uhr
Zitat Peter:
Ich habe es so verstanden, wie du es wohl meintest. ;-)
adrian_broher ¶
19. Mai 2009, 13:33 Uhr
Zitat Peter:
Was fuer eine Frage! Natuerlich nicht!
The Internet is serious business!
Axel ¶
19. Mai 2009, 14:38 Uhr
Gibt's eigentlich irgendwo nen Ding für Mootools dass nen simples Overlay ala Lightbox anzeigt mit HTML drin ohne den ganzen Schnickschnack?
Peter ¶
19. Mai 2009, 14:46 Uhr
Gibt es bestimmt. Fragt sich nur, was du unter Multibox helfen – und ansonsten wäre es sicher nicht schwer, etwas eigenes zu bauen. Könnte sich sogar richtiggehend lohnen, weil dabei bestimmt viele Klassen anfallen, die sich zu Wiederverwertung eignen.
verstehst? Wenn du damit nicht Animationen meinst, könnte dirMASC ¶
19. Mai 2009, 16:22 Uhr
Ich bin da (inzwischen) eher für jQuery.
Meiner Meinung nach hat macht MooTools Probleme, sobald mehrere Scripte eingebaut sind. Ein Script hat - wieso auch immer - zwei andere Scripts geblockt. Nach langem Suchen habe ich dann aufgegeben und auf jQuery zurückgegriffen.
Peter ¶
19. Mai 2009, 16:44 Uhr
Nee. Du machst Witze! Wenn das so wäre, würde doch sicher auch nicht mehr funktionieren. Alles zusammen sind hier auf der Artikelseite bestimmt 5 Mootools-Scripts auf einmal am Werke.
Felix de Ruiter ¶
19. Mai 2009, 19:24 Uhr
Ist es überhaupt möglich, dass innerhalb eines objektorientierten Frameworks wie MooTools (was, ja immerhin "My object oriented Tools" bedeutet) mehrere Skripte einander blockieren?
Peter ¶
19. Mai 2009, 19:31 Uhr
Wenn man einen genügend schweren Javascript-Fehler herbeiführt, dann kriegt man das sicher hin. Aber das hat ja nichts mit Mootools an sich zu tun.
MASC ¶
19. Mai 2009, 20:29 Uhr
Naja... Beispiel:
<script ... mootools.js >
<script ... a.js >
<script ... b.js >
<script ... c.js >
Wenn ich von a/b/c jeweils nur zwei Scripts nehme, klappt alles wie es soll. Sobald ich aber das dritte ebenfalls einbinde (und Reihenfolge war dabei egal), funktionierte aufeinmal nichts mehr...
...schon merkwürdig.^^
Peter ¶
19. Mai 2009, 20:34 Uhr
Bist du sicher, dass du Mootools dafür verantwortlich machen willst, dass dein JS kaputt geht wenn du irgendwelche anderen Scripts einbaust? Ich bin mir nicht sicher ob ich dich recht verstehe, aber so besonders zwingend scheint mir diese Schlussfolgerung nicht … hast du die fraglichen Scripts zu Hand? Ich wette wir finden den Schuldigen (und ich wette auch, dass er nicht Mootools.js heißt).
simBarZ ¶
20. Mai 2009, 09:05 Uhr
finde mootools auch besser, aber Drupal zwingt mehr oder weniger jquery zu nutzen :-(
agaaa ¶
20. Mai 2009, 15:00 Uhr
Die richtige Antwort lautet: prototypeJS
MASC ¶
20. Mai 2009, 17:34 Uhr
Zitat Peter:
http://rapidshare.com/files/235274566/scripts.zip
Peter ¶
20. Mai 2009, 17:45 Uhr
Die
common_compressed1.js
kann ich nicht wirklich lesen, weil die ja komprimiert ist, aber zumindest der Rest sieht gut aus... mal sehen. Jetzt müsste ich nur noch wissen wie man den Fehler provozieren kann. Erzähl mal.MASC ¶
21. Mai 2009, 11:39 Uhr
Einfach nur alle Scripts einbauen.
Die common_compressed1.js ist ein Scroller für die Navigation:
>div id="pages_menu"<
>div id="menu-links"<
><
><
Und die SweetTitles bzw. Slimbox eben einfach nur einbauen.
Peter ¶
21. Mai 2009, 21:41 Uhr
Ich kriege hier keinen Fehler hin. Hm … wäre natürlich praktisch, wenn man deine Konstruktion mal irgendwo komplett und live begutachten könnte.
MASC ¶
22. Mai 2009, 08:28 Uhr
Hab es ja live nicht mehr drin.
Aber mal ein kleines zusammengebasteltes Beispiel:
http://rapidshare.com/files/235876262/fehlerreproduzierung.zip
So wie die index.html aufgebaut ist (mit allen drei Scripten), funktionieren nur die Tooltips. Wenn du nun die sweettitles.js ausbaust, funktioniert sowohl die Navigation (einfach mal nach unten scrollen ;)), als auch die Slimbox (einfach mal auf das Bild klicken ;)). Und genau das funktioniert eben nicht, wenn die sweettitles.js eingebaut ist.
Mario H. ¶
30. Mai 2009, 21:00 Uhr
Aber wozu überhaupt Frameworks verwenden? (Wenn man nicht gerade eine vor JS strotzende coole Web2.0-App baut.)
Es scheint mir so, als ob die Entwicklerszene vor Framework-Geilheit den eigentlichen Zweck des Jobs vollkommen aus den Augen verliert.
Peter ¶
30. Mai 2009, 23:46 Uhr
Wenn du den
darin siehst, entweder bei jeder Kleinigkeit Browserweichen zu basteln, deine eigenen Abstraktionsschichten zu konstruieren oder alternativ auf so handliche Dinge wie funktionierende JSON-Parser einfach zu verzichten, sollst du dich nicht aufgehalten fühlen. Ich für meinen Teil baue lieber funktionierende Websites.Normales Javascript, wie man es heutzutage in Browsern vorfindet, ist reine Folter.