english version

Par Julien Lamarre, 20 septembre 2005
Autres sites: The meaning of life!


AJAX sans utilisation de XMLHttpRequest, frame, iframe, Java ou Flash

  • Seul une image, une feuille de style ou un .js est utilisé pour la communication entre le client et le serveur, le tout sans rafraîchissement de la page.
  • Ces techniques ne sont pas nécessairement les plus utiles et performantes, elles ont été développées uniquement pour le plaisir et pour démontrer leur faisabilité.
  • Pour le code, voir la source de cette page ainsi que le fichier PHP associé.
  • Le code est libre de droits alors ne vous gênez pas pour l'utiliser ou le modifier! Les crédits sont les bienvenus par contre!
  • Pour plus de renseignements, une explication du code ou pour laisser un commentaire: psssst!


avec une image    avec une feuille de style    avec un .js
 


AJAX à l'aide d'une feuille de style

  • Cette technique va uniquement fonctionner si votre navigateur supporte [un element].currentStyle ou window.getComputedStyle. Cela signifie que ça ne fonctionnera pas avec les vieux navigateurs.

  • La connexion du client vers le serveur est effectuée en modifiant la propriété ".href" d'une feuille de style et en lui donnant comme nouvelle location le fichier PHP suivi des paramètres de la requête.

    La réponse du serveur se fait en générant dynamiquement une feuille de style contenant la réponse à la requête insérée dans la propriété "background-image" d'un div caché.

  • Cette technique possède la limitation première qu'une quantité maximale de caractères peuvent probablement être utilisés comme valeur de la propriété "background-image". Un système avec itérations pourrait être mis en place, divisant la réponse du serveur et la communiquant au client paquet par paquet, en respectant la limite de caractères de cette propriété.

    Il y a aussi le fait que seuls les navigateurs récents pourront être visés.

  • Le fichier PHP associé: stylesheet.php

Votre navigateur ne possède pas tous les prérequis pour que ce script fonctionne correctement!
  • support du javascript
  • support de document.getElementById()
  • support de [un element].currentStyle() ou de window.getComputedStyle()

1. Hello World!






2. Addition de deux nombres

+ =




3. En quoi ce nombre est-il spécial? (entrez un nombre de 0 à 9999)

- La réponse sera en anglais
- Les données ont été prises sur http://www.stetson.edu/~efriedma/numbers.html