IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

Variable numérique considérée comme NaN lorsque l'appli est mise sur écran d'accueil iPhone


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Goltar
    Homme Profil pro
    Eternel Etudiant Curieux
    Inscrit en
    Mars 2011
    Messages
    216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Eternel Etudiant Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2011
    Messages : 216
    Par défaut Variable numérique considérée comme NaN lorsque l'appli est mise sur écran d'accueil iPhone
    Bonjour à tous,
    Je cherche à comprendre pourquoi bien que fonctionnant parfaitement sur (Safari desktop et sur Safari iPhone) mon appli ne fonctionne plus correctement lorsqu'elle est placée sur l'écran d'accueil de mon iPhone. (Dans safari, bouton + Sur l'écran d'accueil).

    Extrait de mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    var Cal  = 101;    /* Valeur normalement populée par ma db */
    var G_DepEnerg = 2938.52;
    var PcCal = (Cal / (G_DepEnerg / 100));
    /* Utilisation de la fonction Math.round10 : https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Math/round */
    var NumPCal = Math.round10(PcCal, -1);  
    var TxtNumPCal = (NumPCal + "%");
    $("#ValCalPc").html(TxtNumPCal);
    var PcCalComplet = "<span style='width:" + NumPCal + "%;'></span>";
    Ce qui me donne le résultat désiré sur (Safari Desktop et sur Safari IPhone):
    Nom : Desktop.png
Affichages : 287
Taille : 25,4 Ko
    Par contre lorsque j'ajoute l'appli sur l'écran d'accueil depuis Safari iPhone (bouton + Sur écran d'accueil) et que je lance l'appli j'obtient:
    Nom : OnIphone.png
Affichages : 259
Taille : 19,7 Ko
    ????
    Quelqu'un voit-il d'ou vient le problème? Pour ma part je nage dans la panade !
    Si je fais un typeof de la variable elle est bien du type number

    Merci d'avance

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 232
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 232
    Par défaut
    Bonjour,
    elle est définie où ta méthode round10, pourquoi ne pas utiliser simplement PcCal.toFixed(1), beaucoup plus light ?

  3. #3
    Membre éclairé Avatar de Goltar
    Homme Profil pro
    Eternel Etudiant Curieux
    Inscrit en
    Mars 2011
    Messages
    216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Eternel Etudiant Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2011
    Messages : 216
    Par défaut
    Bonjour NoSmoking,
    en effet elle plus light, c'est ce que j'utilisais de base, mais à force de recherche pour résoudre mon problème j'en suis venu à utiliser celle-ci:
    https://developer.mozilla.org/fr/doc...aux/Math/round
    qui m'offre d'autres possibilités que j'utilise ailleurs dans mon appli.

    Mais en définitive mon problème n'est pas le fait que ce ne soit un numérique ou pas (bien que chaque variable aient été testée dans la console), la question est :
    $("#ValCalPc") étant une simple DIV avec une classe .ui-block-a dans laquelle je n'essaie qu'afficher une valeur ex:11.5%.
    même si je transforme cette valeur en texte par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var AffValeur = TxtNumPCal.toString();
    et que j'essaie de l'afficher par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $("#ValCalPc").html(AffValeur);
    /* ou par */
    $("#ValCalPc").text(AffValeur);
    sur Safari desktop ou iPhone cela fonctionne parfaitement
    Mais lorsque j'ajoute l'appli sur l'écran d'accueil de l'iPhone et que je la lance, il s'obstine à afficher NaN à la place de ce texte.
    Pourquoi un numérique semble-t'il obligatoire ?

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 232
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 232
    Par défaut
    Si tu as un affichage de NaN% c'est qu'à un moment ta variable vaut NaN !
    Donc en remontant on a : var TxtNumPCal = (NumPCal + "%") d'où NumPCal doit valoir NaN, est ce le cas ?

    ... et ainsi de suite en remontant ...

  5. #5
    Membre éclairé Avatar de Goltar
    Homme Profil pro
    Eternel Etudiant Curieux
    Inscrit en
    Mars 2011
    Messages
    216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Eternel Etudiant Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2011
    Messages : 216
    Par défaut
    Non, aucune erreur, j'ai beau remonter aussi haut que je veux chaque variable testée par typeOf donne comme résultat number.

    Je rappelle que tout fonctionne parfaitement dans Safari sur desktop ainsi que sur iPhone.

  6. #6
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 232
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 232
    Par défaut
    et même quand tu fais un alert(typeof TxtNumPCal) juste avant le $("").html(TxtNumPCal) ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Fichier Excel: valeurs numériques considérées comme du texte
    Par sassélesas dans le forum MATLAB
    Réponses: 5
    Dernier message: 24/06/2014, 18h04
  2. Erreur lorsque l'appli est publiée
    Par planeurbret dans le forum VB.NET
    Réponses: 2
    Dernier message: 21/01/2012, 18h46
  3. Mise à jour des données du CR lorsque la DB est mise à jour
    Par j0hn01 dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 17/02/2009, 15h33
  4. [Tableaux] Variable non considéré comme un chiffre
    Par Merlon dans le forum Langage
    Réponses: 7
    Dernier message: 27/06/2007, 13h08
  5. Réponses: 9
    Dernier message: 29/04/2006, 14h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo