Surcharge de fonctions

Signaler
Messages postés
414
Date d'inscription
lundi 19 juillet 2004
Statut
Membre
Dernière intervention
23 septembre 2014
-
Messages postés
2
Date d'inscription
mardi 5 novembre 2002
Statut
Membre
Dernière intervention
8 juillet 2008
-
Salut

Je me demandais s'il était possible de surcharger des fonctions comme le alert par exemple.
L'idée est de faire mon propre alert(titre, message, etc.), un peu plus joli que "l'original".

Merci d'avance

8 réponses

Messages postés
626
Date d'inscription
samedi 28 septembre 2002
Statut
Membre
Dernière intervention
18 mai 2009
3
Une piste :

http://www.javascriptfr.com/codes/PERSONNALISER-BOITES-DIALOGUE_43862.aspx

Mais attention, tu peux oublier le côté modale des boîtes de dialogue.
Messages postés
414
Date d'inscription
lundi 19 juillet 2004
Statut
Membre
Dernière intervention
23 septembre 2014

Merci pour le lien (très intéressant).
Mais je n'avais effectivement pas pensé à ce problème. Je vais voir si ya moyen de le contourner...
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
33
Bonjour,

    pas été voir le lien donné par xtremduke...
    quand à >>possible de surcharger des fonctions comme le alert
    aucun problème, et pour répondre "strictement" à la question :

<script>
    function alert(txt)
    {    document.getElementById("toto").innerHTML+=txt;    }
    alert('saperlipopette');
</script>

    donc... un div, un iframe... de cette manière comme ici... why not
         

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Messages postés
626
Date d'inscription
samedi 28 septembre 2002
Statut
Membre
Dernière intervention
18 mai 2009
3
De la méthode objet tu te pencheras (dixit maître Soda)

window.alert = function(msg){
       /* Script */
}
Messages postés
414
Date d'inscription
lundi 19 juillet 2004
Statut
Membre
Dernière intervention
23 septembre 2014

Merci pour vos réponses.
J'étais parti sur un truc du genre window.alert = function(msg){}.
Je me suis un peu inspiré du lien de XtremDuke mais je préfère développer moi-même (cest comme ça qu'on apprends).

En fait j'essaye de me faire une librairie de fonctions et d'objets utiles (gridView et ce genre de trucs) mais je commence par le plus simple.

Peut-être bientôt une source...
Messages postés
626
Date d'inscription
samedi 28 septembre 2002
Statut
Membre
Dernière intervention
18 mai 2009
3
Même les choses les plus simples peuvent se reveler très complèxes. La création d'une classe en Javascript par exemple ?

Bon courage dans ton projet
Messages postés
2
Date d'inscription
mardi 5 novembre 2002
Statut
Membre
Dernière intervention
8 juillet 2008

Voici un exemple simple pour créer une "classe" en javascript, à vous de juger...

Marche pas encore...


<script>  
 /**
 * Mon objet(class)
 */
 function monObj(){
     /**
     * Exemple de vars propre à l'objet
     */
     if(document.getElementById) this.GET_ELEMENT_BY_ID=new Function("id","return document.getElementById(id);");
     else if(document.all)   this.GET_ELEMENT_BY_ID=new Function("id","return document.all[id];");
     else if(document.layers)  this.GET_ELEMENT_BY_ID=new Function("id","return document.layers[id];"); 
     // =========================
     /**
     * Exemple d'utilisation
     */
     this.writeID=function(id,html){
         this.getElementById(id).innerHTML=html;
     }
     // =========================
    } 
    
    /****** TESTS TESTS TESTS ******/ 
    try { 
        // Instance 
        var monObj=new monObj(); 
        monObj.writeID('idTest','abengadon ça fonctionne');  
    } 
    // Err
    catch(e) { 
        alert(e); 
    }
    /****** TESTS TESTS TESTS ******/ 
</script>




 
Messages postés
2
Date d'inscription
mardi 5 novembre 2002
Statut
Membre
Dernière intervention
8 juillet 2008

Une petite erreure s'est glissé:

   /**
  * Exemple d'utilisation
  */
  this.writeID=function(id,html){
      this.GET_ELEMENT_BY_ID(id).innerHTML=html;
  }
  // =========================