Question

Je construis une application web mobile qui peut ou ne peut pas compter sur ajax, selon que le navigateur de l'utilisateur prend en charge javascript. Depuis que je suis en utilisant JQuery, je veux vous assurer que le navigateur mobile prend en charge AJAX par JQuery avant d'activer ma fonctionnalité AJAX.

Je suis en cours d'exécution dans un problème avec Opera Mini à cause de la façon dont il rend les pages, et je ne suis pas sûr de savoir comment le vérifier. Voici le code que je utilise pour tester AJAX:

$(document).ready(function () {
    $.get(
        'test.txt',
        function() {
            init_ajax();
        }
    );
});

Où init_ajax () permet ma fonctionnalité ajax et désactive ma fonctionnalité statique.

Le problème est, Opera Mini fonctionne avec succès ce code avant la sortie de la page au navigateur, mais ajax ne fonctionne pas réellement sur la page rendue. J'ai essayé d'exécuter cette fonction dans un setTimeout plutôt que sur document.ready, mais a rencontré le même problème.

Yat-il un moyen universel de tester avec précision la présence d'AJAX dans les navigateurs mobiles?

P.S. Si vous voulez tester votre solution dans Opera Mini, il y a un émulateur entièrement fonctionnel ici:

http://www.opera.com/mini/demo/

[Modifier] Je dois mentionner que cette application a besoin de faire un appel ajax environ une fois par minute en utilisant setInterval, donc même si Opera Mini ne supporte certains ajax lorsqu'elle est déclenchée par un onclick, je ne crois pas qu'il y ait aucune façon pour le rendre en charge les appels ajax faites à un certain intervalle. Si nous pouvions tester pour cela, cela résoudrait probablement le problème ci-dessus.

Était-ce utile?

La solution

Ne Opera Mini récupérer les requêtes Web sur les serveurs de Operas rendre les pages, puis de remettre la sortie (sous forme d'images et de texte) à la cible avec des fonctionnalités réduites? Avec le rendu qui se passe sur la ferme Opera Mini serveur donc pas réel et-vient la communication entre le client et le serveur Web, vous ne pouvez pas faire réellement ajax.

Vous avez probablement une autre méthode d'effectuer la vérification pour Opera Mini, regardant l'agent utilisateur pour « Opera Mini / 1.2 » serait idéal. En ce qui concerne l'exécution d'une vérification pour les navigateurs mobiles, eh bien, cela dépend de la portée de la fonctionnalité fournie par le navigateur mobile. Parfois, vous ne pouvez pas vérifier et vous devrez retirer les navigateurs mobiles particuliers par nom.

Plus d'infos ici Design Avec Opera Mini en L'esprit .

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top