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 :

Récupérer Array fonction


Sujet :

jQuery

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 22
    Par défaut Récupérer Array fonction
    Salut tout le monde je rencontre un petit problème vraiment "bizarre"... Sans doute un manque de connaissance de ma part je dois l'avouer mais voila mon problème...

    Mon problème est que je n'arrive pas a récupérer comme valeur de retour mon array. Enfin si je fais un Console.log(realSize) j'ai bien un tableau mais si j'indique la clé elle me dis qu'elle est indéfinis...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    render:function() {
    	trace("-> Render vu crop");
    	var rendered = this.template({ src:this.model.get("src") });
    	realSize = this.getSize(this.model.get("src"));
            //trace(realSize) = Array
            //trace(realSize.hauteur) = pas défini...
    	$(this.templateId).html(rendered);
    	return this;
    },
    getSize:function(src){
    	var tmp_img = new Image();
    	var Data = new Array();
    	tmp_img.src= src;
    	tmp_img.onload = function ()
    	{
    		Data['largeur'] = this.width;
    		Data['hauteur'] = this.height;
    	};
    	return Data;
    }
    Merci d'avance

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    et avec ça ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    tmp_img.complete = function ()
    	{
    		Data['largeur'] = this.width;
    		Data['hauteur'] = this.height;
    	};
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 22
    Par défaut
    Non toujours pas mais je viens de me dire ça ne serais pas un problème de porté?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    tmp_img.complete = function ()
    	{
    		Data['largeur'] = this.width;
    		Data['hauteur'] = this.height;
    	};
    	return Data;
    Logiquement Data ne contient plus hauteur ni largeur?

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    c'est quoi realsize

    moi je vois getSize
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 22
    Par défaut
    C'est ça mais ça me renvoie pas vraiment un tableau enfin c'est bizarre

    (log de la console Chrome)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Array[0]
    hauteur: 3264
    largeur: 4928
    length: 0
    __proto__: Array[0] //je detail pas c'est toute les methodes de la class array
    et j'ai essayer de faire ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    getSize:function(src){
    	var tmp_img = new Image();
    	var Data = new Array();
    	tmp_img.src= src;
    	tmp_img.onload = function ()
    	{
    		Data['largeur'] = this.width;
    		Data['hauteur'] = this.height;
    	};
    	console.log(Data['largeur']);
    	return Data;
    }
    Et ceci me dis que Data['largeur'] n'est pas défini je pense donc à un problème de porté comme je l'ai dis auparavant ^^


    En tout cas merci de prendre du temps pour m'aider

  6. #6
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Ton script est incohérent dans sa chronologie...

    Lorsque tu déclares un gestionnaire d'événement (tmp_img.onload), le script ne se fige pas en attendant benoitement que l'événement survienne, il continue son exécution. Donc lorsque l'instruction suivante (return Data;) est exécutée, l'événement n'a pas encore eu lieu donc il n'y a rien à retourner !

    D'autre part,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    var Data = new Array();
    ...
    	Data['largeur'] = this.width;
    	Data['hauteur'] = this.height;
    Les tableaux associatifs n'existent pas en JavaScript ! Tu dois donc soit passer par un tableau indicé soit par un objet.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 22
    Par défaut
    Merci pour tes réponses je vais voir ce que je peux faire alors

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 21/01/2007, 16h31
  2. [Array] fonction qui détecte un tableau ?
    Par Maxoo dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 20/11/2006, 08h48
  3. Récupérer une fonction imbriquée
    Par Mikiman dans le forum Langage
    Réponses: 6
    Dernier message: 14/08/2006, 15h37
  4. Récupérer paramètre fonction
    Par masseur dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 26/06/2006, 11h51
  5. Réponses: 5
    Dernier message: 13/08/2004, 15h40

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