mmofacts.com

JaCoP - Oder auch On-Demand JavaScript genannt

gepostet vor 17 Jahre, 3 Monate von mr_overkill
Hallo,
für die, die nach einer AJAX-Alternative suchen, habe ich etwas zusammen gestrickt: JaCoP
Verbesserungsvorschläge und (blöde) Kommentare sind natürlich erwünscht.
gepostet vor 17 Jahre, 3 Monate von KoMtuR
Hmm ist schon "nett", aber wieso Ajax nicht nutzen, wenn du trotzdem Javascript nutzt. Ich seh nicht ganz den Sinn drin, aber du wirst dir sicher schon was gedacht haben dabei, wenn du sowas entwickelst Ich würde mir nicht die Mühe machen und was neu erfinden, was eh mit Javascript schon vorhanden ist.
Aber ist nur meine Meinung

Die Verbindung ist aus unerklerlichen Gründen stabiler
Solange man sich ein Workaround schafft, dass man niemals über die 2 offenen Verbindungen kommt ist meiner Meinung nach Ajax genauso stabil.

Es lassen sich JavaScript- Variablen und ganze -Funktionen übertragen
Wieso sollte das nicht mit Ajax gehen? Solltest dich nciht so an dem X aufhängen
Was du als Response zurücklieferst ist dir überlassen. Ob nun XML, JSON, Javascript oder Plaintext ist wurst. Über responseText() bekommste ja immer die Daten.

Läuft auf vielen DOM-fähigen Browsern wie zum Beispiel: Internet Explorer, Mozilla, Mozilla Firefox, Opera ...
XmlHttpRequest auch

Benötigt wenig Bandbreite für die Übertragung
Wie gesagt das schlimme X *gg*
Wie siehts mitn caching aus? Gibts da irgendwelche Browser, die dann deine Javascript-Dateien cacht?
edit: Da hab ich doch glatt was vergessen. Also wenn ich mit Ajax/Javascript was aufbaue, dann versuche ich mich am MVC-Modell zu halten, was Javascript als View-Ebene darstellt. du schickst ja nun sozusagen Anfragen an den Controller und bekommst nen View zurück. Ok darüber kann man sich echt streiten, aber ich bin da wahrscheinlich zu pingelig ^^
gepostet vor 17 Jahre, 3 Monate von TheUndeadable
IE 7 erhalte ich Fehler...
gepostet vor 17 Jahre, 3 Monate von Nuky
Unerklärlich bitte.
Ansonsten: Warum eig. nicht AJAX?
Man ist nicht an die Bibliotheken gebunden, wirklich nicht..
gepostet vor 17 Jahre, 3 Monate von Drezil
bin ich doof oder versteh ich den unterschied nicht?
bei beiden technicken wird doch gepollt, einmal über das xmlhttprequest-objekt und einmal anders (wie genau?)..
wieso soll ich das eine dem anderen bevorzugen?
ajax ist ne schöne technik und in kombination mit einem sauberen framework wie z.b. prototype kinderleicht zu bedienen..
gepostet vor 17 Jahre, 3 Monate von KoMtuR
Original von Drezil
bei beiden technicken wird doch gepollt, einmal über das xmlhttprequest-objekt und einmal anders (wie genau?)..

Soweit ich das verstanden habe werden einfach in nen td immer wieder tags geschrieben, die dann als quelle die php-datei enthalten, die den javascript-code zurückliefert.
gepostet vor 17 Jahre, 3 Monate von mr_overkill
Wie siehts mitn caching aus? Gibts da irgendwelche Browser, die dann deine Javascript-Dateien cacht?

Es wird nicht im Cache vom Browser gespeichert. Das will ich auch nicht.
Für JavaScripts die im Cache bleiben sollen, verwende ich hart verlinkte JS per .
XmlHttpRequest auch

...Bei den neueren Browsern.
Und ja das schlimme X -> Bandbreitenfresser
Wenn ich z. B. nur eine Statusvariable abfragen will: Response j=1,2.... etc. dann ist es ohne (AJA)X(ML) schneller.
^^
Ansonsten: Warum eig. nicht AJAX?
^^
IE 7 erhalte ich Fehler...

Habe hier frisch den IE 6 und 7 installiert = Kein einziger Fehler.
Nur bei "Alert wird undefined! zurückgeben, da die Funktion zeit() noch nicht existiert." wird ein gewollter Fehler ausgegeben.
bin ich doof oder versteh ich den unterschied nicht?

bei beiden technicken wird doch gepollt, einmal über das xmlhttprequest-objekt und einmal anders (wie genau?)..
Jup beide pollen. Per URL-/ HTTP(s)request-Aufruf (Oder wie ihr's auch nennen wollt). Siehe Quellcode.
PS: Ich wollte nur aufzeigen, wie es vor AJAX auch ging/ & geht.
MfG,
WoVerstecktSichMeineSignatur?
gepostet vor 17 Jahre, 3 Monate von KoMtuR
Original von mr_overkill
XmlHttpRequest auch

...Bei den neueren Browsern.
So also IE6 kannst, FF1.0 und Opera ka aber auch schon ziemlich früh. Und du willst mir doch nicht sagen, dass IE6 neu ist und FF 1.0.Was willst du für Browser unterstützen? Nichtmal Firmen haben was älteres, ok geschweige denn, dass sie javascript aktiviert haben
Kommt mir ein wenig so vor, als wölltest du ein Windowsprogramm mit dem Zusatz "läuft auch unter Windows3.11 und Dos" vermarkten
gepostet vor 17 Jahre, 3 Monate von knalli
Ja ganz nett.. aber wo ist da bitte höhere Bandbreite bei Ajax? Das hab ich jetzt immer noch nicht ganz verstanden..
Wenn ich das richtig verstanden habe, dann lädst du dynamisch Script-Blöcke nach.. Ajax sehe ich mehr als (Daten-)Schnittstelle. Aber ich glaube, das meinte KoMtuR bereits.
gepostet vor 17 Jahre, 3 Monate von Drezil
Original von knalli
Ja ganz nett.. aber wo ist da bitte höhere Bandbreite bei Ajax? Das hab ich jetzt immer noch nicht ganz verstanden..
Wenn ich das richtig verstanden habe, dann lädst du dynamisch Script-Blöcke nach.. Ajax sehe ich mehr als (Daten-)Schnittstelle. Aber ich glaube, das meinte KoMtuR bereits.

genau da sahe ich auch den nachteil dieses systems.
In einer klassischen ajax-anwendung schick ich dem client einmal nen großes script, dass gecached wird.
danach werden per ajax nicht viel mehr als konkrete parameter zur darstellung und evaluierung der bisher (vllt. sogar aus dem cache) geladenen js-funktionen.
ich finde ein
function getParamsForFunction(bla) {

new Ajax.Request('ajax/sedData.php?bla='+bla, {
method: 'get',
onSuccess: function (transport) {
data = transport.evalJSON();
functionCall(data);
}
});
}
viel besser als das nachladen eines script-blockes.
beim nachladen hat man nämlich probleme:
wurde funktion x schon definiert? muss ich die nachladen?
hab ich einen callback, wann funktion x nachgeladen wurde oder muss ich pollen?
muss das php-ding nur sachen ala "foo(param); bar(param2);" machen oder muss es direkt foo und bar mitliefern und ggf überschreiben?
ich finde das alles sehr problematisch, da man nicht immer sichergehen kann (gerade bei einer modularen applikation) welche module/funktionen schon geladen wurden und welche noch müssen - ganz zu schweigen von dem overhead im worst-case immer die ganze funktion mitzusenden..

Auf diese Diskussion antworten