Une fenetre de debugging en javascript
Voici un exemple qui permet d'afficher diverses informations dans une fenêtre prévue à cet effet.
Fortement inspirée du travail de : Philippe Sarcher 1998 philippe @ sarcher.org http://www.sarcher.org/
Pour l'utiliser, il faut inclure le ficher javascript :
DebuggingWindow.js
De la manière suivante :
"<" script langage="JavaScript" src="DebuggingWindow.js">\< /script \>
Pour la possibilité d'avoir un Beep, il faut copier le fichier BIP.WAV.
Ensuite, dans votre page .html, mettez des ordres Trace("....")
où vous voulez pour voir apparaitre vos traces. Vous ajouter un ordre de validation des traces (voir + loin) c'est tout !!!
Test la fonction Trace
Test n°2 de la fonction Trace
Test n°3 avec un br
fait un Beep
Effacer tout
La DebuggingWindow accepte un certain nombre d'options . Ces options sont positionnable par :
TraceSetOptions("opt:valeur;opt:valeur;....").
opt étant le nom de l'option et valeur la valeur à lui donner.
Liste des options :
- on : (0 ou 1 (par défaut)) permet d'activer ou d'arreter l'écriture des traces dans la console.
- size : Taille des caractères affichés dans la console. Par défaut 3;
- wsiz : Taille de la fenetre au démarrage. Doit etre indiqué sous la forme
"width=xx,height=yy" et doit etre positionner avant l'ouverture de la fenetre donc avant le premier ordre Trace. Par défaut 400x500.
- date : (1 ou 0 par défaut) Indique si on doit mettre l'heure en début de chaque message à la console.
- focus : (0 ou 1) Permet de cacher ou de montrer la fenetre a un moment donné. Si 0 on cache, si 1 on force le focus sur la console.
- echap : (1 ou 0 par défaut) Permet de transformer tous les caractères "<" en "<" dans la chaine à afficher, ceci
afin d'éviter de troubler l'affichage.
- lev1, lev2, lev3 : (0 ou 1) ce sont des niveaux de trace. Lorsque vous mettez un ordre Trace, vous pouvez
lui mettre un deuxième paramètre qui est 1,2 ou 3. (ex : Trace(Debut de ma fonction",2) ). Si le niveau correspondant est positionné, le message s'affichera,
sinon, il ne s'affichera pas.