2009-03-07 11 views
1

Je veux devenir plus intelligent avec AJAX, mais je ne sais pas trop où aller. J'ai fait un peu de programmation DHTML dans la journée - comme il y a 8 ans! Avant que ça s'appelle AJAX. J'ai utilisé emacs et codé à la main tous les javascript, débogués via "Alert".Recommandations pour AJAX simple?

À ce stade, je pense qu'il existe des cadres qui rendent les choses plus agréables et plus faciles, mais lesquelles? Où commencer? Recommandations?

  1. est jQuery indispensable? Juste agréable d'avoir?
  2. Qu'en est-il du projet SACK?
  3. Firebug?
  4. d'autres bibliothèques ou frameworks libres que vous recommandez? ou déconseiller?
  5. pour un projet très simple, j'ai trouvé des tonnes de pièges avec FF vs IE compat. Sans entrer dans un débat religieux sur qui a raison et qui a tort, quels sont les conseils pour naviguer dans ce champ de mines pour produire des applications qui fonctionnent et ressemblent principalement à n'importe quel navigateur. Un gars avait un conseil: insert * {padding: 0; margin: 0;} en haut de sa pile .css, car FF et IE ont tous les deux un padding et des marges par défaut différents pour des éléments comme UL OL, etc. Y a-t-il une liste de conseils comme ça? Orientation?
  6. Je n'ai pas de Mac et je ne veux vraiment pas supporter le coût du test de IE, FF, Opera, Safari, Chrome, à travers toutes les versions et plates-formes. Astuces? Y a-t-il une solution à 80% ici? Comme si je tester sur FF &, puis-je deviner que cela fonctionnera sur les autres?
  7. conseils sur les sites de tutoriels, pour commencer? Il y a des tonnes d'infos là-bas, qui sont les bons endroits où aller. En particulier, parce que DHTML était il y a environ 10 ans, mes recherches google sont en train de trouver des informations vraiment périmées.
  8. Outils de débogage et de développement? J'ai trouvé un évaluateur juste-à-temps xpath sur le web sur zvon.org. C'était bon mais pas aussi flexible que je le voulais. C'est quelque chose que je pense serait inestimable. xsl et xpath doivent être les langues les plus opaques que j'ai jamais utilisées. Quand j'ai commencé avec regex, il y avait des outils regex juste-à-temps disponibles, comme Expresso, etc. Ceux-ci étaient inestimables pour le développement et l'apprentissage de la regex dans les premiers jours. La nuit dernière, j'ai passé trop de temps à bidouiller avec une expression xpath, et je me demande s'il existe des outils JIT similaires pour xpath. Et qu'en est-il du débogage et du développement de Javascript?

Principalement, je suis intéressé par les aspects côté client. Je ne m'intéresse pas tellement aux approches client + serveur intégrées comme ASP.NET AJAX, pour le moment. Si vous me parliez d'un framework client AJAX ou d'un outil de développement qui ne fonctionnait qu'avec Ruby, cela ne m'intéresserait pas.

Merci!

EDIT: pourquoi ai-je été rejeté? Est-ce une mauvaise question à poser? Cela m'a semblé parfaitement raisonnable? est-il impoli?

Répondre

3

c'est habituellement encore plus facile que la fonction ajax() ci-dessus. surtout je fais juste ....

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

une fois dans ajouter quelque temps un rappel

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

et je suis d'accord jQuery est indispensable. ou quelque chose comme ça .. en utilisant javascript brut est un champ de problèmes de tous les navigateurs ces jours-ci. J'aime visualjquery.com comme une référence pratique (mais je souhaite que Remy le mettrait à jour à 1.3.2)

Et je ne pouvais pas faire mon travail sans Firebug alors c'est totalement nécessaire.

Je lance xampplite sur un PC pour tester. Et j'utilise NotePad++ ou Eclipse PDT 2.0 pour l'édition (en particulier pour PHP côté serveur) et CVS et je suis bon pour aller ...

La façon dont je fais le test multi-navigateur est via une VM. J'utilise le VirtualBox de Sun et une machine virtuelle XP avec tous les navigateurs chargés. J'utilise régulièrement FF3 et IE7, donc ma machine virtuelle contient IE6, FF2, Chrome, Opera et Safari. J'utilise parfois une image Ubuntu 8.10 mais pas vraiment souvent.

Pour Regex obtenir une copie de RegexBuddy - facilement une valeur de 40 $

+0

Je suis bien avec Regex maintenant. Mais j'ai encore une courbe d'apprentissage abrupte devant moi sur xpath. Je cherche un XpathBuddy je suppose. – Cheeso

1

Personnellement, je pense que jQuery est indispensable. Il y a beaucoup de différences de navigateur avec XMLHttpRequest. jQuery simplifie tout cela. Voici un 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 
    } 
}); 

Vous pouvez facilement changer cette option pour retourner JSON, HTML, etcj.

Il existe également des méthodes wrapper pour cela qui réduisent considérablement le nombre de paramètres tels que $.load(), $.post() et ainsi de suite.

En référence aux différences de navigateur, je vous suggère fortement de commencer par une réinitialisation CSS comme Yahoo's reset CSS (il y en a d'autres).

En termes de développement, Firefox est la norme, combinée avec Firebug (et généralement YSlow). HttpFox et Web Developer sont également des plug-ins populaires.

+0

bonnes choses, je vous remercie ... – Cheeso

1
  1. jQuery n'est pas indispensable, mais c'est très utile.
  2. Je n'en ai jamais entendu parler
  3. Je pense qu'un framework js est suffisant. Donc je recommande jQuery.
  4. La réinitialisation CSS ne va pas résoudre tous les problèmes de compatibilité, mais elle peut aider de manière significative. Pour une réinitialisation css ultime, voir Eric Meyer's CSS reset.
  5. Essayez http://browsershots.org/
  6. Je n'ai aucune recommandation ici.
  7. Pour le débogage de javascript - firebug (extension firefox). Vous pouvez également essayer d'utiliser fiddler pour vérifier ce qui se passe entre le serveur et le client.
0

Je voudrais également fortement recommander l'utilisation de JQuery. Cela rend la vie tellement plus facile. Une chose que j'ai apprise au sujet de JS est de ne jamais croire que cela fonctionne. Juste parce que vous utilisez JQuery et cela fonctionne dans quelques navigateurs ne signifie pas que cela fonctionne dans les autres.

Vous devez l'essayer en autant de sondeurs sur autant de systèmes que vous le pouvez.

1

Pour faire des requêtes Ajax, j'utilise http://www.prototypejs.org/
Pour tout le reste, j'écris mon propre JavaScript. Même si ça a l'air d'effacer un div, je préfère toujours le faire comme un moyen d'apprendre.

Quant à commencer, voici mon tutoriel:

new Ajax.Updater(domId, urlToAPage); 

Où: domid = quoi que ce soit sur votre page html qui a une carte d'identité, tant que ce n'est pas un objet d'entrée. urlToAPage = pourrait être la page à contacter et obtenir les données.

Vous pouvez en faire la demande plus complexe:

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

Vous pouvez changer la méthode de « post » à « obtenir ». Pars peut être n'importe quoi. De plus, il semble même pour la demande de publication. Donc, si vous voulez faire une demande à un fichier appelé hello.php et envoyer un paramètre après avec deux arguments, puis placez la réponse dans un div appelé « bonjour »:

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

en savoir plus: http://www.prototypejs.org/learn/introduction-to-ajax

Questions connexes