J'ai un site que j'ai développé qui fait un bon usage de Javascript, et une utilisation minimale d'AJAX pour un certain nombre de choses. Le site a bien fonctionné sur l'iPhone jusqu'à ce que j'ajoute le function to create an HttpRequest handle à quel point tout le Javascript sur l'iPhone échoue maintenant silencieusement. Donc, j'ai quelques questions.AJAX sur l'iPhone?
(1) Il semble que AJAX ne fonctionne pas du tout sur l'iPhone. Est-ce vrai? Si non, comment puis-je modifier la fonction de création HttpRequest pour accueillir l'iPhone?
(2) Si AJAX est en effet impossible sur l'iPhone, y at-il un moyen de modifier la fonction donnée afin qu'elle échoue gracieusement sur l'iPhone, et d'autres scripts sur la page fonctionneront toujours?
(3) Si ce n'est pas vrai, que dois-je faire côté serveur (et est-ce même possible?) Détecter l'iPhone, de sorte que je puisse retirer le code AJAX entièrement lorsqu'un iPhone demande la page? Le fonctionne également très bien, c'est-à-dire la possibilité d'utiliser CSS pour détecter l'iPhone en tant que périphérique d'affichage et d'agir en conséquence, similaire à ce que vous utilisez avec Opera Show. Bien sûr, cela ne réglerait pas le problème AJAX, mais ce serait bien.^_^
Merci pour les réponses. Plusieurs de mes clients accèdent régulièrement au site à partir de l'iPhone, et je souhaite que mes pages fonctionnent autant que possible. Je suis donc prêt à modifier mon code, même si je n'en ai pas encore testé.
Oui, je le test régulièrement sur Safari pour Windows. Je n'ai pas (et je ne veux pas) de Mac pour le tester. Peut-être que c'est juste quelque chose d'autre que je fais ... –
Je suggérerais de ne pas utiliser w3schools pour votre référence primaire, ils sont un hotch-potch d'IE et des informations non standard. Essayez une implémentation AJAX plus testée, par exemple jQuery? – Gareth
Wow, vraiment? Je me suis dit (basé sur le nom) qu'ils étaient plus standard que ça ... Merci pour l'info. C'est probablement mon problème là. Je veux dire, si c'était moi, je n'utiliserais pas du tout la version IE (ActiveX a besoin de mourir), mais je sais que je ne devrais probablement pas faire ça ...^_ ^) –