See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Prototype – Wikipedia

Prototype

aus Wikipedia, der freien Enzyklopädie

Prototype
Entwickler: Sam Stephenson
Aktuelle Version: 1.6.0.2 (25. Januar 2008)
Betriebssystem: unabhängig
Kategorie: JavaScript-Framework
Lizenz: MIT-Lizenz
Deutschsprachig: nein
Website: www.prototypejs.org

Prototype ist ein freies, sehr umfangreiches JavaScript-Framework, das von Sam Stephenson im Jahre 2005 entwickelt wurde. Es stellt sowohl verschiedene Programmierhilfen für Ajax zur Verfügung als auch Möglichkeiten den JavaScript-Quelltext zu verkürzen. Es ist ein integraler Bestandteil von Ruby on Rails, aus dessen Reihen es entstanden ist. Inzwischen dient Prototype als Grundlage für zahlreiche Projekte wie beispielsweise script.aculo.us und Rico.

Inhaltsverzeichnis

[Bearbeiten] Funktionen

Prototype stellt viele Funktionen für die Entwicklung von JavaScripts bereit. Dies reicht von Kurzbefehlen (Shortcuts) bis hin zu aufwändigeren Funktionen wie z.B. die für XMLHttpRequest.

[Bearbeiten] Funktionsbeispiele

[Bearbeiten] Die $()-Funktion

Um ein DOM-Element einer HTML-Seite anzusprechen, wird üblicherweise diese Funktion angewandt:

document.getElementById("id_des_elements")

Die $()-Funktion von Prototype verkürzt die Anwendung folgendermaßen:

$("id_des_elements")

Die Funktion kann als Ersatz für die getElementById() Funktion verwendet werden, um z.B. die CSS Textfarbe zu ändern:

$("id_des_elements").style.color = "#ffffff";

Oder noch kürzer, nach "Prototype Art":

$("id_des_elements").setStyle({color: '#ffffff'});

Vor Version 1.5 sah dies wie folgt aus:

Element.setStyle("id_des_elements", {color: "#ffffff"});

[Bearbeiten] Die $F()-Funktion

Aufbauend auf die $()-Funktion kann mittels $F() der Wert eines Form-Elements angesprochen werden. Bei einem Textfeld liefert die Funktion die im Feld befindlichen Daten; bei einem Select-Objekt (Dropdown-Menü) den aktuell ausgewählten Eintrag.

$F("id_of_input_element")

[Bearbeiten] Das Ajax-Objekt

Zum Ziel wurde hierbei gesetzt, den Umgang mit der XMLHttpRequest-Funktion zu erleichtern und eine auf unterschiedliche Browser individuell zugeschnittene Programmierung überflüssig zu machen.

Es stehen folgende zwei Arten zum Abruf zur Verfügung: Ajax.Request liefert die rohe und unformatierte XML-Ausgabe; Ajax.Updater schreibt die Server-Response direkt in ein angegebenes DOM-Objekt.

Der Ajax.Request-Aufruf im folgenden Beispiel liest zuerst die Werte aus den Formular-Textfeldern aus, ruft eine Webseite vom Webserver ab, wobei die Formulardaten als Post-Werte gesendet werden und ruft schlussendlich die definierte Funktion showResponse() auf, sobald die Anfrage erledigt wurde:

var params = $H({
        value1: $F("name_of_id_1"),
        value2: $F("name_of_id_2")
});
 
var url = "http://www.example.com/path/server_script";
 
var myrequest = new Ajax.Request(url, {
        method: "post",
        parameters: params,
        onComplete: showResponse
});

[Bearbeiten] Objektorientierte Programmierung

Prototype bietet Unterstützung für klassische objektorientierte Programmierung.

Die Methode Class.create() im folgenden Beispiel legt eine neue Klasse an:

var FirstClass = Class.create({
   // Die Methode "initialize" dient als Konstruktor
   initialize: function () {
       this.data = "Hello World";
   }
});
 
var DataWriter = Class.create(FirstClass, {
    printData: function () {
        document.write(this.data);
    }
});

[Bearbeiten] Weblinks

Andere Sprachen


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -