Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3188 connectés 

  FORUM HardWare.fr
  Programmation
  Javascript/Node.js

  [JS] Créer une nouvelle méthode pour n'importe quel objet

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[JS] Créer une nouvelle méthode pour n'importe quel objet

n°2295097
Nyleor
Posté le 20-01-2017 à 22:26:31  profilanswer
 

Bonjour,
 
J'ai une question toute bête mais je ne trouve pas la réponse. Comment créer une méthode globale pour n'importe quel objet ? Ou : comment créer une fonction normale, que j'appelle comme une méthode ?
 
Exemple :
 
Ici je veux créer la méthode smoothScrollTo() mais c'est un exemple, peu importe j'aimerais créer une méthode pour n'importe quel objet (node, string, etc.), ou plutôt, j'aimerais pouvoir appeler une fonction comme une méthode.
 

Code :
  1. function smoothScrollTo(hor, ver)
  2. {
  3. this.scrollTo(hor, ver);
  4. }
  5. window.smoothScrollTo(100, 100);


 
Mon problème est donc que le this dans smoothScrollTo() n'est pas reconnu, et j'aimerais qu'il me retourne l'objet window.
 
 
Autre exemple :

Code :
  1. function surligne()
  2. {
  3. this.setAttribute('style','background-color:lime;');
  4. }
  5. var input = document.querySelector('input');
  6. input.surligne();


Ici, je voudrais que this dans surligne() me retourne input.
 
Vous voyez l'idée.
 
Merci bien de votre aide !


---------------
Galerie
mood
Publicité
Posté le 20-01-2017 à 22:26:31  profilanswer
 

n°2295105
DDT
Few understand
Posté le 21-01-2017 à 16:26:50  profilanswer
 

Comme ça:

Code :
  1. HTMLInputElement.prototype.surligne = function () {
  2.     this.setAttribute('style','background-color:lime;');
  3. }


Ou sur HTMLElement si tu veux que ça s'applique à d'autres types d'éléments.
 
Mozilla explique tout ça: https://developer.mozilla.org/fr/do [...] C3%A9tails


---------------
click clack clunka thunk
n°2295113
antac
..
Posté le 22-01-2017 à 13:09:41  profilanswer
 

Oui, il faut que tu le fasses sur la classe maîtresse, tous les autres objets dérivent de celle là (directement ou indirectement). (Vive le modèle objet)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Javascript/Node.js

  [JS] Créer une nouvelle méthode pour n'importe quel objet

 

Sujets relatifs
creer un projet a partir des infos debugrecherche librairie pour créer un requeteur pour utilisateur final
créer des bordures automatiques ... ?Creer repertoire en ligne
Creer repertoire en lignecréer des listes python en boucle list(n)
Creer un bouton macro plusieurs feuilles d'un classeurFonction JS pour récupérer le tag image "Alt" sur un diaporama
Creer une chaîne de N "espaces"je n'arrive pas a créer un menu déroulant avec mes div
Plus de sujets relatifs à : [JS] Créer une nouvelle méthode pour n'importe quel objet


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR