2009-03-07 11 views
1

Ich möchte in AJAX schlauer werden, aber nicht sicher, welchen Weg ich gehen soll. Ich habe einige DHTML-Programmierung zurück in den Tag getan - wie vor 8 Jahren !, bevor es AJAX genannt wurde. Ich benutzte Emacs und handkodiert das ganze Javascript, debuggte über "Alarm".Empfehlungen für einfaches AJAX?

An diesem Punkt denke ich, gibt es Rahmenbedingungen da draußen, die Dinge schöner und einfacher machen, aber welche? Wo soll man anfangen? Empfehlungen?

  1. ist jQuery unverzichtbar? Einfach schön zu haben?
  2. Was ist mit Projekt SACK?
  3. Firebug?
  4. andere freie Bibliotheken oder Frameworks, die Sie empfehlen? oder nicht empfehlen?
  5. für ein sehr einfaches Projekt fand ich Tonnen von Fallen mit FF vs IE kompat. Ohne in eine religiöse Debatte darüber einzutreten, wer recht hat und wer falsch liegt, gibt es einige Tipps, wie Sie dieses Minenfeld navigieren können, um Apps zu erstellen, die in jedem Browser funktionieren und ähnlich aussehen. Ein Typ hatte einen Tipp: einfügen * {padding: 0; margin: 0;} am oberen Rand seines .css-Stacks, weil FF und IE beide unterschiedliche Standard-Padding- und Margin-Werte für Elemente wie UL OL usw. haben. Gibt es eine Liste mit Tipps wie dieser? Beratung?
  6. Ich habe keinen Mac und möchte nicht die Testkosten von IE, FF, Opera, Safari, Chrome, über die unzähligen Versionen und Plattformen. Hinweise? Gibt es hier eine 80% ige Lösung? Wie wenn ich auf FF & IE teste, kann ich erraten, dass es auf den anderen arbeiten wird?
  7. Tipps zu Tutorial-Sites, erste Schritte? Es gibt Tonnen von Informationen da draußen, die die besten Orte sind, zu gehen. Insbesondere, weil DHTML vor etwa 10 Jahren war, haben meine Google-Suchen einige wirklich veraltete Informationen ergeben.
  8. Debugging- und Entwicklungswerkzeuge? Ich habe einen xpath just-in-time-Evaluator im Web auf zvon.org gefunden. Es war gut, aber nicht so flexibel wie ich es wollte. Das ist etwas, von dem ich denke, dass es von unschätzbarem Wert sein würde. xsl und xpath müssen die undurchsichtigsten Sprachen sein, die ich je benutzt habe. Als ich mit Regex anfing, gab es Just-in-Time-Regex-Tools wie Expresso usw., die in den frühen Tagen für die Entwicklung und das Erlernen von Regex von unschätzbarem Wert waren. Letzte Nacht verbrachte ich waaaay zu lange mit einem XPath-Ausdruck und ich frage mich, ob es ähnliche JIT-Tools für xpath gibt. Und was ist mit dem Debuggen und Entwickeln von Javascript selbst?

Meistens interessiere ich mich für die clientseitigen Aspekte. Ich bin jetzt nicht so sehr an integrierten Client + Server-Ansätzen wie ASP.NET AJAX interessiert. Wenn Sie mir von einem Client-AJAX-Framework oder -Entwicklungswerkzeug erzählen, das nur mit Ruby funktioniert, wäre ich nicht interessiert.

Danke!

EDIT: Warum habe ich bekommen abgewählt? Ist das eine schlechte Frage zu stellen? Es erschien mir vollkommen vernünftig. ist es unhöflich?

Antwort

3

ist es normalerweise sogar einfacher als die oben genannte Ajax() Funktion. meistens mache ich nur ....

$('#mydiv').load('http://getsomehtml.php?op=loadmeup'); 

einmal in eine Weile einen Rückruf hinzufügen

document.body.style.cursor = "wait"; 
$('#mydiv').load('http://getsomehtml.php?op=loadmeup', function() { 
    document.body.style.cursor = "default"; 
}); 

und ich stimme jQuery ist unverzichtbar. oder so ähnlich .. mit rohen Javascript ist ein Minenfeld von Problemen mit allen Browsern in diesen Tagen. Ich mag visualjquery.com als eine praktische Referenz (aber ich wünschte, Remy würde es auf 1.3.2 zu aktualisieren)

Und ich konnte meine Arbeit w/o Firebug nicht tun, so dass absolut erforderlich ist.

Ich laufe xampplite auf einem PC zum Testen. Und ich benutze NotePad++ oder Eclipse PDT 2.0 zur Bearbeitung (insbesondere für die serverseitige PHP) und CVS und ich bin gut zu gehen ...

So wie ich die Multi-Browser-Test zu tun ist über eine VM. Ich benutze Suns VirtualBox und eine XP virtuelle Maschine mit allen geladenen Browsern. Ich benutze regelmäßig FF3 und IE7, also meine VM enthält IE6, FF2, Chrome, Opera und Safari. Ich benutze manchmal ein Ubuntu 8.10 Bild, aber nicht wirklich oft.

Für Regex eine Kopie RegexBuddy erhalten - leicht wert die $ 40

+0

ich mit Regex jetzt gut bin. Aber ich habe noch eine steile Lernkurve vor mir auf Xpath. Ich suche nach einem XpathBuddy, denke ich. – Cheeso

1

Ich persönlich denke, jQuery unverzichtbar ist. Es gibt viele Unterschiede zwischen den Browsern mit XMLHttpRequest. jQuery vereinfacht all das. Hier ist ein example:

$.ajax({ 
    url: 'document.xml', 
    type: 'GET', 
    dataType: 'xml', 
    timeout: 1000, 
    error: function(){ 
     alert('Error loading XML document'); 
    }, 
    success: function(xml){ 
     // do something with xml 
    } 
}); 

Sie können ganz einfach diese JSON zurück ändern, HTML, etcj.

Auch gibt es Wrapper-Methoden für diese, die die Anzahl der Parameter wie $.load(), $.post() und so weiter stark reduzieren.

In Bezug auf Browser-Unterschiede, empfehle ich dringend, dass Sie mit einem CSS-Reset wie Yahoo's reset CSS beginnen (es gibt andere).

In Bezug auf die Entwicklung ist Firefox der Standard, kombiniert mit Firebug (und in der Regel YSlow). HttpFox und Web Developer sind ebenfalls beliebte Plugins.

+0

good stuff, danke ... – Cheeso

1
  1. jQuery ist nicht unentbehrlich, aber es ist sehr hilfreich.
  2. noch nie davon gehört
  3. Ich denke, ein js-Framework ist genug. Also ich empfehle jQuery.
  4. CSS-Reset wird nicht alle Kompatibilitätsprobleme beheben, aber es kann erheblich helfen. Für den ultimativen CSS-Reset siehe Eric Meyer's CSS reset.
  5. Versuchen http://browsershots.org/
  6. Ich habe keine Empfehlung hier.
  7. Zum Debuggen von Javascript - Firebug (Firefox-Erweiterung). Sie können auch versuchen, Fiddler zu überprüfen, was zwischen Server und Client übergeben wird.
0

Ich würde auch sehr empfehlen mit JQuery. Es macht das Leben so viel einfacher.

Eine Sache, die ich über JS gelernt habe, ist nie zu vertrauen, dass es funktioniert. Nur weil Sie JQuery verwenden und es in einigen Browsern funktioniert, heißt das nicht, dass es in den anderen Browsern funktioniert.

Sie müssen es in so vielen browsers auf so vielen Systemen versuchen, wie Sie können.

1

Für Ajax-Anfragen verwende ich http://www.prototypejs.org/
Für alles andere schreibe ich mein eigenes JavaScript. Selbst wenn es darum geht, ein div zu verblassen, bevorzuge ich es immer noch meinen Weg als eine Art zu lernen.

Was begonnen, hier ist meine kurze Einführung:

new Ajax.Updater(domId, urlToAPage); 

Wo: DOMiD = alles auf Ihrer HTML-Seite, die eine ID hat, solange es nicht ein Eingabeobjekt ist. urlToAPage = könnte die Seite sein, von der aus die Daten abgerufen werden sollen.

Sie können die Anforderung komplexer machen:

new Ajax.Updater(domId, urlToAPage, {method: 'post', parameters: pars}); 

Sie können Methode von 'post' ändern zu 'get'. Pars kann alles sein. Außerdem sieht es für die Postanforderung gleich aus. Also, wenn Sie eine Anfrage an eine Datei namens hello.php machen wollen und einen Beitrag Parameter mit zwei Argumenten senden, dann die Antwort in ein ‚Hallo‘ genannt div setzen:

var domId = 'hello'; 
var urltoPage = 'hello.php'; 
var pars = 'hello=1&name=hsbsitez'; 

mehr lesen: http://www.prototypejs.org/learn/introduction-to-ajax

Verwandte Themen