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 :

[DOM] Ajouter une méthode à un element HTML


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 106
    Par défaut [DOM] Ajouter une méthode à un element HTML
    Bonjour,
    Après des heures de tests et de recherche je me résigne à poster
    Tout est presque dit dans le titre : je souhaiterais ajouter une méthode à un élément HTML, par exemple (stupide):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <a id="un_a" href="toto.html">toto</a>
     
    <script type="text/javascript">
      var a=document.getElementById('un_a');
      ***********
      ajout d'une méthode à a : getSrc() qui retournerait this.src
      ***********
      alert(a.getSrc());
    </script>
    Merci de votre aide.
    PS :
    si il est possible en plus d'appliquer une méthode à un type de balise, bien qu'il me semble que non, je suis preneur!

  2. #2
    Membre confirmé Avatar de gKsam
    Profil pro
    Inscrit en
    Août 2007
    Messages
    166
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 166
    Par défaut On peu le faire
    regarde la propriété prototype qui permet d'ajouter méthodes et propriétés à profusion.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 106
    Par défaut
    j'ai déjà bcp regardé, mais sans succès!
    je n'ai pas réussi à appliquer ça à un élément, seulement à des classes

  4. #4
    Membre confirmé Avatar de gKsam
    Profil pro
    Inscrit en
    Août 2007
    Messages
    166
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 166
    Par défaut
    et comme ça :

    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
    <a id="un_a" href="toto.html">toto</a>
     
    <script type="text/javascript">
     
    	function getSrc() {
     
       		//le code de ta méthode
    	}	
     
     	var a=document.getElementById('un_a');
     
     	//ajout d'une méthode à a : getSrc() qui retournerait this.src
     	a.getSrc = getSrc
     
      	alert(a.getSrc());
    </script>

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 106
    Par défaut
    j'aurais bien aimé, mais j'avais déjà essayé

    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
     
    <a id="un_a" href="toto.html" onclick="essai(); return false;">toto</a>
     
    <script type="text/javascript">
     
    	function getSrc() {
     			return this.href;
       		//le code de ta méthode
    	}	
     
     	var a=document.getElementById('un_a');
     
     	//ajout d'une méthode à a : getSrc() qui retournerait this.src
     	a.getSrc = getSrc
    	function essai()
    	{ 
    	 	var a=document.getElementById('un_a');
      		alert(a.getSrc());
    	}
    </script>
    ah bah non, en fait ça marche, je comprends plus lol

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 106
    Par défaut
    mais pourquoi ceci ne fonctionne pas alors? ai-je fait une erreur??
    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
    21
    22
    23
     
    <script type="text/javascript">
    	function getNN() {
    			alert(this.nodeName);
     			return this.nodeName;
    	}	
     
    	window.onload = function(){
    		setPro(document.body);
    	}
    	var ELTS=""
    	function setPro (elt)
    	{
    		ELTS+=" "+elt.nodeName;
    		if(elt.nodeName != 'body')		elt.getNN=getNN;
    		var fils=elt.childNodes;
    		for(var i=0; i<fils.length; i++)
    		  if(fils[i].nodeType == 1) setPro(fils[i]);
    		return;
    	}
    </script>
     
    <a id="totooo" href="javascript:this.getNN();">test</a><br />
    en controlant ELTS, tous les éléments de la page ont été affectés, mais ça ne fonctionne pas :s

    PS: j'ai trouvé, tout mon problème venait du this qui est indéfini je ne sais pas trop pourquoi, mais tant pis, c'est bon

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

Discussions similaires

  1. Ajouter une fonction aux elements html
    Par the-destroyer dans le forum Général JavaScript
    Réponses: 16
    Dernier message: 30/06/2011, 08h53
  2. Réponses: 4
    Dernier message: 30/05/2007, 14h35
  3. [DOM] Ajouter une ligne à un tableau
    Par Arnard dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 13/04/2007, 09h59
  4. "ajouter une méthode dans une méthode"
    Par Zorgloub dans le forum Langage
    Réponses: 1
    Dernier message: 09/04/2006, 12h53
  5. comment ajouter une image dans mon HTML??
    Par Mickey.jet dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 22/03/2006, 15h12

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