Zum Inhalt springen

MooTools

aus Wikipedia, der freien Enzyklopädie
{{#if: | {{{Name}}} | {{#invoke:WLink|getArticleBase}} }}

{{#if: |

colspan="2" class="notheme" style="text-align:center; background:#Vorlage:Standardfarbe; color:#202122;" | |
 {{#if: {{#invoke:Wikidata|claim|P154}} | 
[[Datei:{{#invoke:Wikidata|claim|P154}}|150px]]
 }}

}}{{#if: |

{{#if: JavaScript-Framework |
JavaScript-Framework }}|

}}

Basisdaten

{{#if: |

Hauptentwickler
 {{#if: {{#invoke:Wikidata|claim|P126}} | 
Maintainer claim|P126|parameter=link|references=ja|list=, }}
 }}

}}{{#if: Das MooTools-Entwicklerteam |

Entwickler
 {{#if: {{#invoke:Wikidata|claim|P178}} | 
Entwickler claim|P178|parameter=link|references=ja|list=, }}
 }}

}}{{#if: |

Erscheinungsjahr
 {{#if: {{#invoke:Wikidata|claim|P577}} | 
Erscheinungsjahr claim|P577|references=ja|list=, }} |
   {{#if: {{#invoke:Wikidata|claim|P571}} | 
Erscheinungsjahr claim|P571|references=ja|list=, }}
   }}
 }}

}}{{#ifeq: | KEINE_ANGABE || {{#if: |

Aktuelle Version
({{#if: | Vorlage:Datum – die Form mit drei unbenannten Parametern oder anderen einzelnen Zeiteinheiten ist veraltet und wird nicht mehr unterstützt. Bitte gib das Datum einfach im Klartext an.
format {{{AktuelleVersionFreigabeDatum}}} | {{#timefl:now|date}}}} {{{2}}} | T._Monat JJJJ}} lang= {{#switch: -|=de #default=de-AT
            }}
   }}

}}) }}

 {{#if: {{#invoke:Wikidata|claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813}} | 
Aktuelle Version claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813|references=ja}} {{#if: {{#invoke:Wikidata|claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813|qualifier=P577}} |
({{#invoke:Wikidata|claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813|qualifier=P577}}) }}}}}}

}}{{#ifeq: {{{AktuelleVorabVersion}}} | KEINE_ANGABE || {{#if: |

Aktuelle Vorabversion
({{#if: | Vorlage:Datum – die Form mit drei unbenannten Parametern oder anderen einzelnen Zeiteinheiten ist veraltet und wird nicht mehr unterstützt. Bitte gib das Datum einfach im Klartext an.
format {{{AktuelleVorabVersionFreigabeDatum}}} | {{#timefl:now|date}}}} {{{2}}} | T._Monat JJJJ}} lang= {{#switch: -|=de #default=de-AT
            }}
   }}

}}) }}

 {{#if: {{#invoke:Wikidata|claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724}} | 
Aktuelle Vorabversion claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724|references=ja}} {{#if: {{#invoke:Wikidata|claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724|qualifier=P577}} |
({{#invoke:Wikidata|claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724|qualifier=P577}}) }}}}}}

}}{{#if: |

Ausführungsumgebung
 {{#if: plattformunabhängig | 
Betriebssystem plattformunabhängig |
   {{#if: {{#invoke:Wikidata|claim|P306}} | 
Betriebssystem claim|P306|parameter=link|references=ja|list=, }}
   }}
 }}

}}{{#if: JavaScript |

Programmier­sprache JavaScript |
 {{#if: {{#invoke:Wikidata|claim|P277}} | 
Programmier­sprache claim|P277|parameter=link|references=ja|list=, }}
 }}

}}{{#if: Klassenbibliothek |

Kategorie Klassenbibliothek

}}{{#if: MIT-Lizenz |

Lizenz MIT-Lizenz |
 {{#if: {{#invoke:Wikidata|claim|P275}} | 
Lizenz claim|P275|parameter=link|references=ja|list=, }}
 }}

}}{{#if: sprachneutral |

deutschsprachig faculty|sprachneutral}} | ja | nein }}

}}{{#if: |

Sonstiges {{{Sonstiges}}}Vorlage:Infobox Software/Wartung/Sonstiges

}}{{#if: www.mootools.net |

www.mootools.net |
 {{#if: {{#invoke:Wikidata|claim|P856|notdeprecated=1}} | 
{{#invoke: WLink | formatURL | {{#invoke:Wikidata|claim|P856|parameter=link|notdeprecated=1}}}}
 }}

}}{{#if: |

Dateien [[c:Category:Created with {{{Dateien}}}|{{{Dateien}}}]]

}}

MooTools (My Object Oriented Tools<ref>http://mootools.net/blog/2009/04/01/a-new-name-for-mootools/</ref>) ist ein freies JavaScript-Webframework zur effizienten Entwicklung von erweiterbarem und browserübergreifend kompatiblem Code. Es ist objektorientiert, modular und kompakt. Das Framework steht unter der MIT-Lizenz. Etwa 2 % aller Webseiten nutzen MooTools.<ref>http://w3techs.com/technologies/overview/javascript_library/all</ref>

Eigenschaften

  • Erweiterbar und modular, so dass es Entwicklern möglich ist, nur die Komponenten einzubinden, die tatsächlich benötigt werden.
  • Starke Objektorientierung für mehr Flexibilität und Erweiterbarkeit.
  • Effektkomponente mit Transitionen, für Animationen innerhalb der Webseite.

Komponenten

MooTools beinhaltet eine Reihe von Komponenten, wobei nicht jede davon für jede Applikation benötigt wird. Einige der Hauptkomponenten sind:

Core
eine Kollektion von Funktionen, die von allen anderen Komponenten benötigt werden.
More
eine offizielle Kollektion von Erweiterungen, die Core erweitern und weitere Funktionen hinzufügt.
Class
ist die MooTools-Basisklassenbibliothek für die Instanziierung von Klassenobjekten.
Natives
eine Kollektion von JavaScript-nativen Objekten. Natives fügen zusätzliche Funktionen hinzu, erhöhen die Kompatibilität und erweitern MooTools um neue Methoden.
Element
ist eine Komponente für weitere Verbesserungen und zur Erhöhung der Kompatibilität der HTML-Element-Objekte.
Effects
ist eine Effekte-API zur Animation von Elementen.
Remote
stellt eine XHR-Schnittstelle bereit, Cookies und diverse JSON-Werkzeuge für Entwickler.
Window
stellt eine browserübergreifende Schnittstelle zu klientspezifischen Informationen bereit, z. B. der Bildschirmauflösung.

Eine optionale, komprimierte JavaScript-Datei, die benutzerspezifische Komponenten enthält, kann direkt beim Download auf der MooTools-Webseite erstellt werden.

Browserkompatibilität

MooTools ist kompatibel und getestet mit:

Objektorientierte Programmierung

MooTools beinhaltet eine robuste Klassensammlung und ein fortschrittliches Vererbungssystem, welches eine Wiederverwertung des Quellcodes und eine einfache Erweiterung ermöglicht. Zum Beispiel:

<syntaxhighlight lang="javascript"> var Tier = new Class({

   initialize: function(name) {
       this.name = name;
   }

});

var Katze = new Class({

   Extends: Tier,
   reden: function() {
       return 'Miau!';
   }

});

var Hund = new Class({

   Extends: Tier,
   reden: function() {
       return 'Wuff! Wuff!';
   }

});

var tiere = {

   a: new Katze('Missy'),
   b: new Katze('Mr. Bojangles'),
   c: new Hund('Lassie')

};

Object.each(tiere, function(tier) {

   alert(tier.name + ': ' + tier.reden());

});

// Ausgabe der Dialogfenster // // Missy: Miau! // Mr. Bojangles: Miau! // Lassie: Wuff! Wuff! </syntaxhighlight>

Zusätzlich stellt es einen eigenen Satz an Klassen zur Verfügung, mit denen es beispielsweise leicht möglich ist, verschiedene Effekte zu verwirklichen. Dazu zählen Größenänderungen des Browserfensters, Ein- und Ausblendeeffekte, Bewegungseffekte und vieles mehr (Ajax, JSON usw.). Übergangseffekte lassen sich mit wenigen Zeilen Code realisieren, da MooTools die meisten Arbeitsschritte selbst erledigt.

Siehe auch

Weblinks

Einzelnachweise

<references />