Utilisateur:Dr Brains/Calculette.js
Note : après avoir enregistré la page, vous devrez forcer le rechargement complet du cache de votre navigateur pour voir les changements.
Mozilla / Firefox / Konqueror / Safari : maintenez la touche Majuscule (Shift) en cliquant sur le bouton Actualiser (Reload) ou pressez Maj-Ctrl-R (Cmd-R sur Apple Mac) ;
Firefox (sur GNU/Linux) / Chrome / Internet Explorer / Opera : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl-F5.$(AjouterLeLien);
function AjouterLeLien(){
var BoiteAOutils = document.getElementById('p-tb');
if(!BoiteAOutils) return;
var ContenuBoiteAOutils = BoiteAOutils.getElementsByTagName('ul')[0];
if(!ContenuBoiteAOutils) return;
var LigneCalculette = document.createElement('li');
var LienCalculette = document.createElement('a');
LienCalculette.innerHTML = "Calculette";
LienCalculette.title = "Afficher la calculette";
LienCalculette.href = "javascript:AfficherCalculette();";
LigneCalculette.appendChild(LienCalculette);
ContenuBoiteAOutils.appendChild(LigneCalculette);
}
function AfficherCalculette(){
var Calculette = document.createElement('form');
Calculette.id = "Calculette";
Calculette.setAttribute('style', 'position:fixed;top:200px;left:150px;z-index:150;background-color:white;border:1px solid grey;padding:1em;text-align:center;');
document.body.insertBefore(Calculette, document.body.firstChild);
var PremierTerme = document.createElement('input');
PremierTerme.id = "Terme_1";
PremierTerme.type = "text";
Calculette.appendChild(PremierTerme);
var Operateur = document.createElement('select');
Operateur.id = "Operateur";
var ListeOperateurs = new Array("+", "-", "*", "/");
for(var a=0,l=ListeOperateurs.length;a<l;a++){
var Option = document.createElement('option');
Option.value = ListeOperateurs[a];
Option.appendChild(document.createTextNode(ListeOperateurs[a]));
Operateur.appendChild(Option);
}
Calculette.appendChild(Operateur);
var DeuxiemeTerme = document.createElement('input');
DeuxiemeTerme.type = "text";
DeuxiemeTerme.id = "Terme_2";
Calculette.appendChild(DeuxiemeTerme);
var BoutonEgale = document.createElement('input');
BoutonEgale.type = "button";
BoutonEgale.value = "=";
BoutonEgale.onclick = function(){ FaireOperation(); };
BoutonEgale.onselect = function(){ FaireOperation(); };
Calculette.appendChild(BoutonEgale);
var Resultat = document.createElement('input');
Resultat.type = "text";
Resultat.id = "Resultat";
Calculette.appendChild(Resultat);
Calculette.appendChild(document.createElement('hr'));
var BoutonFermer = document.createElement('input');
BoutonFermer.type = "button";
BoutonFermer.value = "Fermer";
BoutonFermer.onclick = function(){ FermerCalculette(); };
BoutonFermer.onselect = function(){ FermerCalculette(); };
Calculette.appendChild(BoutonFermer);
}
function FermerCalculette(){
var Calculette = document.getElementById("Calculette");
if(Calculette) Calculette.parentNode.removeChild(Calculette);
}
function FaireOperation(){
var PremierTerme = document.getElementById("Terme_1");
var Operateur = document.getElementById("Operateur");
var DeuxiemeTerme = document.getElementById("Terme_2");
var Resultat = document.getElementById("Resultat");
if(!PremierTerme || !Operateur || !DeuxiemeTerme || !Resultat ) return;
var ValeurPremierTerme = parseFloat(PremierTerme.value);
var ValeurDeuxiemeTerme = parseFloat(DeuxiemeTerme.value);
var ValeurOperateur = Operateur.value;
var ValeurResultat;
switch(ValeurOperateur){
case "+" : ValeurResultat = ValeurPremierTerme+ValeurDeuxiemeTerme;
break;
case "-" : ValeurResultat = ValeurPremierTerme-ValeurDeuxiemeTerme;
break;
case "*" : ValeurResultat = ValeurPremierTerme*ValeurDeuxiemeTerme;
break;
case "/" : ValeurResultat = ValeurPremierTerme/ValeurDeuxiemeTerme;
break;
}
Resultat.value = (""+ValeurResultat).replace(/0000.*/, "");
}