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

JavaScript Discussion :

Bug ie7 . Objet javascript et prototype


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2006
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2006
    Messages : 205
    Par défaut Bug ie7 . Objet javascript et prototype
    Bonjour ...

    Je suis avec un bug sur ie7 sur quelque chose qui me parait simple mais ou je galère .... Voici le code simplifier ..


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    function obj_assoc(obj){
    	this.obj = obj;
    }
     
    obj_assoc.prototype = {
    	deplier : function(){
    		alert( "test deplier");
    	}
    }
    Dans ma page je cree un objet de type obj_assoc, test = new obj_assoc(10)

    jusque la rien de particulier ...

    sur un element html je met l'evenement onclick='test.deplier()'
    Sur firefox pas de probleme, j'ai un alert 'test deplier'
    Le bug vient de IE7 qui me sort ( debug bar ) : Cet objet ne gère pas cette propriété ou cette méthode


    Quelqu'un aurait il une idée ?

    En vous remerciant d'avance

  2. #2
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    obj_assoc.prototype = {
    	deplier : function(){
    		alert( "test deplier");
    	}
    }
    est un objet et non pas une méthode :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    obj_assoc.deplier = function(){
    		alert( "test deplier");
    }
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    function obj_assoc(obj){
    	this.obj = obj;
    	this.deplier = function(){
    		alert( "test deplier");
    	};
    }

  3. #3
    Membre expérimenté
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2006
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2006
    Messages : 205
    Par défaut pas compris
    'est un objet et non pas une méthode'

    Je suis bien d'accord . Si je crée un objet de type 'obj_assoc' avec
    test = new obj_assoc(10); test est bien une instance de obj_assoc
    et il a bien accès à la méthode défini dans le prototype ?
    D'ailleurs cela marche sur firefox .

    Je n'ai pas compris ce que tu veux me dire.

    Néanmoins merci de te réponse

  4. #4
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 684
    Par défaut
    et tu as essayé cet appel avec IE?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onclick="function(){test.deplier()}";

  5. #5
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    obj_assoc.prototype = {
    ...

    tu affectes un abjet a la méthode prototype, donc pas bon, il faut ajouter uune proriété :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    obj_assoc.prototype.deplier  = function()...

  6. #6
    Membre expérimenté
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2006
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2006
    Messages : 205
    Par défaut OKI
    Super merci beaucoup ... je n'avais pas saisi ...

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 02/06/2014, 20h20
  2. [POO] reférence à un objet javascript
    Par Giansolo dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 08/05/2007, 09h53
  3. [POO] contenu d'un objet javascript
    Par wtfu dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 10/08/2006, 11h12
  4. [POO] Comment acceder a un objet javascript instancie dans une page mere
    Par herbert dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 20/07/2006, 19h34
  5. [POO] objet javascript et html
    Par jakouz dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 20/04/2006, 17h58

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