// (gH) -_- pot-pourri.js ; TimeStamp (unix) : 17 Mars 2010 vers 12:50
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// + +
// + POT-POURRI DE CODE Javascript +
// + +
// + +
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// (gH) -_- deuxnombres.js ; TimeStamp (unix) : 18 Janvier 2010 vers 17:36
function f(x) { return x+1 } ;
function g(x) { return 2*x } ;
<form action="http://forge.info.univ-angers.fr/~gh/internet/non.php" method="get"
onsubmit ="javascript:this.double.value=this.nombre.value*2 ; return false ">
<form action="http://forge.info.univ-angers.fr/~gh/internet/non.php" method="get"
onsubmit ="javascript:this.double.value=this.nombre.value*2 ; this.demi.value=this.nombre.value/2 ; return false ">
<form action="http://forge.info.univ-angers.fr/~gh/internet/non.php" method="get"
onsubmit ="javascript:this.tiers1.value=this.nombre.value/3 ; this.tiers2.value=parseFloat(this.tiers1.value).toFixed(2) ; return false ">
<form action="http://forge.info.univ-angers.fr/~gh/internet/non.php" method="get"
onsubmit ="javascript:t return maGestion(this) ">
// ########################################################################
// (gH) -_- sen_deuxnombres.js ; TimeStamp (unix) : 06 Octobre 2008 vers 13:43
// ##########################################################
// ce texte s'exécute au moment de son chargement
window.document.write("<h1>Sans formulaire : </h1>") ;
a = 8 ;
b = 2 ;
window.document.write("<p>") ;
window.document.write("Remarque : on utilise les deux nombres "+a+" et "+b+" exactement dans cet ordre. ") ;
window.document.write("Leur addition donne "+(a+b)+". ") ;
window.document.write("Leur soustraction donne "+(a-b)+". ") ;
window.document.write("Leur multiplication donne "+(a*b)+". ") ;
window.document.write("Leur division donne "+(a/b)+".") ;
window.document.write("</p>") ;
// ##########################################################
function operations() {
// sans parseInt, on utilise les chaines de caractères
// et donc 1 + 1 est en fait "1" + "1" soit "11" au lieu de 2
v1 = parseInt( document.getElementById('n1').value ) ;
v2 = parseInt( document.getElementById('n2').value ) ;
a = v1 + v2 ;
b = v1 - v2 ;
c = v1 * v2 ;
d = v1 / v2 ;
debut = "Remarque : on utilise les deux nombres "+v1+" et "+v2+" exactement dans cet ordre. " ;
add = "Leur addition donne "+a+". " ;
sou = "Leur soustraction donne "+b+". " ;
mul = "Leur multiplication donne "+c+". " ;
div = "Leur division donne "+d+"." ;
phrase = debut + add + sou + mul + div ;
// alert(phrase)
nouveaup = document.createElement("p") ;
nouveaup.innerText = phrase ; // Internet Explorer
nouveaup.textContent = phrase ; // Firefox
document.body.appendChild(nouveaup) ; // Firefox
alert('les réponses sont tout en bas de la page !') ;
return false ; // pour éviter de déclencher l'action
} // fin de fonction operations
// ##########################################################
function operations2() {
// on affiche le champ de réponse
x1 = parseInt( document.getElementById('x1').value ) ;
x2 = parseInt( document.getElementById('x2').value ) ;
a = x1 + x2 ;
b = x1 - x2 ;
c = x1 * x2 ;
if (x2!=0) { d = x1 / x2 ; } ;
debut = "Remarque : on utilise les deux nombres "+x1+" et "+x2+" exactement dans cet ordre. " ;
add = "Leur addition donne "+a+". " ;
sou = "Leur soustraction donne "+b+". " ;
mul = "Leur multiplication donne "+c+". " ;
if (x2!=0) {
div = "Leur division donne "+d+"." ;
} else {
div = "Leur division est impossible car le deuxième nombre est nul." ;
} ; // fin de si
phrase = debut + add + sou + mul + div ;
if (x1>x2) {
phrase += " Et "+x1+" est sans doute plus grand que "+x2+"." ;
} else {
phrase += " Et "+x2+" est sans doute plus grand que "+x1+"." ;
} ; // fin de si
// alert(phrase)
ancienp = document.getElementById('resultats') ;
ancienp.innerText = phrase ; // Internet Explorer
ancienp.textContent = phrase ; // Firefox
ancienp.setAttribute('class','visible') ; // Firefox
ancienp.setAttribute('className','visible') ; // Internet Explorer
return false ; // pour éviter de déclencher l'action
} // fin de fonction operations
function deuxnombres3() {
// #######################################################
vara = parseInt(document.getElementById("a").value,10) ;
varb = parseInt(document.getElementById("b").value,10) ;
document.getElementById("res").firstChild.data = "" ;
document.getElementById("res").firstChild.data += " a vaut " + vara + " et b vaut " + varb + ".\n" ;
if (vara<varb) {
document.getElementById("res").firstChild.data += " donc a est plus petit que b.\n" ;
} else {
document.getElementById("res").firstChild.data += " donc b est plus petit que a.\n" ;
} ; // finsi
return false ;
// #######################################################
} ; // fin de fonction deuxnombres
// on veut produire
// <td><a href='javascript:move(2)' title=''><img src='h0.gif' border=0 width=140 height=20 alt=' '></a><\/td>"
td2 = document.createElement("td") ;
ah2 = document.createElement("a") ;
im2 = document.createElement("img") ;
ah2.setAttribute("href",'javascript:move(2)') ;
im2.setAttribute("onclick",'move(2)') ;
im2.setAttribute("src",'h0.gif') ;
im2.setAttribute("alt",'h0.gif') ;
im2.setAttribute("width","140") ;
im2.setAttribute("height","20") ;
td2.appendChild(ah2) ;
td2.appendChild(im2) ;
// calculs sur tableaux
var tabt = new Array(1,1,2,3,5,6,7,8,8,8) ;
var tab2 = new Array(1,2) ;
var tab3 = new Array(1,2,3,4,5) ;
var tabt = new Array(1,1,2,3,5,6,7,8,8,8) ;
var tab2 = new Array(1,2) ;
var tab3 = new Array(1,2,3,4,5) ;
function valMax3(leTableauTrie) {
// nbelt : nombre d'éléments dans le tableau
// max : maximum
// idv : indice de valeur dans le tableau
// valc : valeur courante dans le tableau à l'indice idv
// le tableau est déjà trié (non vérifié)
return leTableauTrie[leTableauTrie.length -1]
} ; // fin de fonction valMax
function valMax4(leTableauTrie) {
// nbelt : nombre d'éléments dans le tableau
// max : maximum
// idv : indice de valeur dans le tableau
// valc : valeur courante dans le tableau à l'indice idv
// le tableau est déjà trié (non vérifié)
nbelt = leTableauTrie.length ;
maxt = leTableauTrie[nbelt-1] ;
idv = nbelt-2 ;
nboc = 1 ;
prem = nbelt ;
dern = nbelt ;
valc = leTableauTrie[idv] ;
while ((valc==maxt) && (idv>0)) {
nboc++
idv-- ;
valc = leTableauTrie[idv] ;
dern = idv + 1 ;
} ; // fin pour idv
function valMax2(leTableau) {
// nbelt : nombre d'éléments dans le tableau
// maxjl : maximum courant (Jusque Là)
// idv : indice de valeur dans le tableau
// valc : valeur courante dans le tableau à l'indice idv
// prem : première fois où on la voit
// dern : dernière fois soù on la voit
// nboc : nombre d'occurences
nbelt = leTableau.length ;
maxjl = leTableau[0] ;
prem = 1 ;
dern = 1 ;
nboc = -1 ;
for (idv=0;idv<nbelt;idv++) {
valc = leTableau[idv] ;
if (valc==maxjl) {
nboc++
dern = idv+1
} else {
if (valc>maxjl) {
maxjl = leTableau[idv] ;
nboc = 1
prem = idv+1
dern = idv+1
} ; // fin si
} ; // fin de si
} ; // fin pour idv
// (gH) -_- voirpage.js ; TimeStamp (unix) : 31 Janvier 2010 vers 12:45
function demo() {
dbg = 1 ; // 1 en normal, 0 pour "préparer le rendu"
txt1 = "Comme vous pouvez le voir, ce texte s'affiche APRES le chargement de toute la " ;
txt2 = "page." ;
if (dbg==1) { alert(txt1+txt2) ; } ;
elth2 = window.document.createElement("h2")
txt3 = " Après elth2 = window.document.createElement(\"h2\"), on ne voit rien de plus " ;
txt4 = " car l'élément est créé EN MEMOIRE seulement." ;
if (dbg==1) { alert(txt3+txt4) ; } ;
eltxt = window.document.createTextNode("insertion")
txt5 = " Après eltxt = window.document.createTextNode(\"insertion\"), on ne voit rien de plus " ;
txt6 = " car le noeud-texte est créé EN MEMOIRE seulement." ;
if (dbg==1) { alert(txt5+txt6) ; } ;
elth2.appendChild(eltxt)
txt7 = " Après elth2.appendChild(eltxt), toujours rien à l'écran " ;
txt8 = " car il s'agit d'une gestion de l'arbre en mémoire." ;
if (dbg==1) { alert(txt7+txt8) ; } ;
document.getElementById("milieu").appendChild(elth2) ;
txt9 = " Par contre, avec document.getElementById(\"milieu\").appendChild(elth2) ; " ;
txt10 = " le navigateur affiche le texte." ;
if (dbg==1) { alert(txt9+txt10) ; } ;
etxt2 = window.document.createTextNode("réussie") ;
eltfo = window.document.createElement("font") ;
eltfo.setAttribute("color","#880000") ;
eltfo.appendChild(etxt2)
document.getElementById("milieu").appendChild(eltfo) ;
} // fin de fonction demo
// #######################################################
// (gH) -_- mystere.js ; TimeStamp (unix) : 27 Février 2010 vers 20:36
var tabM = new Array("M","F","A") ; // Cours : Maths Francais Anglais
var tabN = new Array(2,2,1) ; // Nb exos par cours
var tabI = new Array() ; // Identifiant des exercices
idi = -1 ;
for (idm=0;idm<tabN.length;idm++) {
for (ide=0;ide<tabN[idm];ide++) {
idi = idi + 1 ;
jde = ide + 1 ;
tabI[idi] = tabM[idm] + jde ;
} ; // fin pour ide
} ; // fin pour idm
// #######################################################
// (gH) -_- hanoi.js ; TimeStamp (unix) : 24 Mars 2010 vers 16:32
// file imported from http://wipos.p.lodz.pl/zylla/games/hanoi5e.html
// see (gH)'s functions at the bottom of this file.
var noDisks=5;
var nd1=noDisks+1, noImgs=(noDisks+1)*3;
var peg = 0, firstPick=0, secondPick=0;
var i=0, j=0, noMoves=0, time=0;
var what= 0, where=0, ontop=0;
var aa = new Array(); aa[3*nd1+1]=nd1; aa[3*nd1+2]=nd1; aa[3*nd1+3]=nd1;
var bb = new Array(0, 1,nd1,nd1 );
var src = new Array(); src[nd1]=3;
var dst = new Array(); dst[nd1]=3;
var minMoves = Math.pow(2,noDisks) - 1;
var finished = false;
var started = false;
var helped = 0;
function Sorry() {
alert("Sorry, this game needs to run on a browser \n which supports the image object.");
}
function move(peg) {
if (document.images) {
if (firstPick==0) {
firstPick=peg;
where= bb[firstPick];
what = aa[3*where+firstPick];
if (where<=noDisks) {
if (started==false) {
started=true; time=nowTime(); //time of the first click
}
document.images[firstPick].src=document.images[3*where+firstPick].src;
document.images[3*where+firstPick].src="h0.gif";
aa[firstPick] = what;
aa[3*where+firstPick] = 0;
bb[firstPick] =bb[firstPick]+1;
updateInfo(" Now click where you want it to move. ");
}
else { firstPick=0;
updateInfo(" Nothing to pick here ! ");
if (finished) updateInfo(" Game already finished ! Use other buttons.");
}
}
else { secondPick=peg;
ontop =aa[3*bb[secondPick]+secondPick];
endLev=bb[secondPick]-1;
if (what>ontop) {
alert("You want to put bigger disk [__"+what+"__] \n on the top of the smaller one [_"+ ontop+ "_] !" );
} // then
else {
document.images[secondPick].src=document.images[firstPick].src;
if (firstPick!=secondPick) {
document.images[firstPick].src="h0.gif";
noMoves = noMoves+1;
}
document.images[endLev*3+secondPick].src=document.images[secondPick].src;
document.images[secondPick].src="h0.gif";
aa[endLev*3+secondPick]=aa[firstPick];
aa[firstPick] = 0;
bb[secondPick]=bb[secondPick]-1;
updateInfo(" Okay, click the peg from which to move a disk. ");
firstPick=0;
if ((aa[2*3]==1) && (finished!=true)) {
updateInfo(" Okay, game finished. Let\'s try next one :) ");
finished=true; Congratulations()
}
} // else
}
}
else Sorry();
} // move
function Recognize() {
var i=0, j=0, wht=0;
for (i=0; i<=noDisks; i++) {
for (j=1; j<=3; j++) {
wht=aa[3*i+j];
if (wht!=0) src[wht]=j;
}
}
} // fun
function CalcMinMoves() {
minMoves=0;
Recognize();
for (i=noDisks; i>=1; i--) {
if (src[i+1] == dst[i+1])
dst[i]=src[i+1]
else dst[i]=6-src[i+1]-dst[i+1];
if (src[i] != dst[i])
minMoves=minMoves + Math.pow(2,i-1);
}
} // fun
function initArray() {
bb[1]=1; bb[2]=noDisks+1; bb[3]=noDisks+1; noMoves=0;
if (document.images) { document.images[0].src = "han.gif";
for (i=0; i<=noDisks; i++) {
aa[i*3+1]=i; nom = "h" + i + ".gif" ; document.images[i*3+1].src = nom ;
aa[i*3+2]=0; document.images[i*3+2].src = "h0.gif";
aa[i*3+3]=0; document.images[i*3+3].src = "h0.gif";
}
}
else Sorry();
CalcMinMoves(); finished=false; started = false; helped=0;
updateInfo(' Click a peg to move a disk! ');
}
function shuffleArray() {
if (document.images) {
for (i=1; i<=noImgs; i++) { aa[i]=0; document.images[i].src = "h0.gif" };
for (i=1; i<=3; i++) { bb[i]=noDisks+1 };
noMoves=0;
for (i=1; i<=noDisks; i++) {
what=noDisks+1-i; peg=Math.floor(Math.random()*3)+1;
if ((i==1) && (peg==3)) {peg=1};
bb[peg]=bb[peg]-1;
where=3*bb[peg]+peg;
aa[where]=what;
nomimg = "h" + what + ".gif";
document.images[where].src = nomimg
}
}
else Sorry();
CalcMinMoves(); finished=false; started = false; helped=0;
updateInfo(' Click a peg to move a disk! ');
}
function nowTime() {
var start = new Date();
return (start.getTime() / 1000);
}
function Congratulations() {
var conText = "";
atime = parseInt(nowTime() - time);
if (noMoves>minMoves+1)
conText = "however\n You\'ve made "+ (noMoves-minMoves) + " wrong moves."
if (noMoves==minMoves+1)
conText = "and\n You\'ve made only one wrong move."
if (helped>2)
conText = "however\n I\'ve helped you with "+ (helped) + " moves."
if (atime>=3*minMoves)
conText = conText + "\n You click to slow.";
if (atime<minMoves)
conText = conText + "\n You click with " + (Math.round((2*noMoves-helped)*60/atime) ) + " mickeys per minute.";
if (conText=="") conText = "\n You\'ve made it in " + noMoves +" moves!\n"
else conText = "\n You\'ve finished it well, " + conText;
if ((noMoves==minMoves) && (atime<=2*minMoves) && (helped<=1))
conText = "\n C o n g r a t u l a t i o n s !" +
"\n You\'ve made it in a minimum of " + minMoves + " moves."
"\n and in a very good time = " + atime + " seconds" +
"\n You are the MASTER of that game.";
alert( conText );
return true
}
function updateInfo( information ) {
document.forms[0].info1.value = information;
return true
}
function oneMove() {
var from=1, to=1;
Recognize(); // update positions info
for (i=noDisks; i>=1; i--) {
if (src[i+1] == dst[i+1])
dst[i] = src[i+1]
else dst[i] = 6-src[i+1]-dst[i+1];
if (src[i] != dst[i]) {
from=src[i]; to=dst[i]
}
}
if (firstPick != 0) { // disk raised, check if the good one
if (firstPick != from) { move(firstPick); move(from); }
}
else move(from);
move(to);
if (from != to) helped = helped+1;
return true
}
// the following lines have been added by (gH)
// [gilles.hunault "at" univ-angers.fr]
// ########################################################################
function pageInit() {
// ########################################################################
if (!document.images) {
alert('This game does not work \n in this browser version') ;
} // fin de si
updateInfo(' Click a peg to move a disk! ') ;
initArray()
} // fin de fonction pageInit
// ########################################################################
// ########################################################################
function pegsInit() {
// ########################################################################
//document.writeln("<table border='0' cellspacing='0' cellpadding='0' width='420'>");
tp = document.createElement("table") ;
tp.setAttribute("cellpadding",0) ;
tp.setAttribute("cellspacing",0) ;
tp.setAttribute("border",0) ;
tp.setAttribute("width","420") ;
tp.setAttribute("className","tpeg") ;
tp.setAttribute("class","tpeg") ;
// alert(noDisks)
for (var i=0; i<=noDisks; i++) {
// document.writeln("<tr>");
tr1 = document.createElement("tr") ;
// document.writeln("<td><a href='javascript:move(1)' title=''><img src='h" + i + ".gif' border=0 width=140 height=20 alt=' '><\/a><\/td>");
td1 = document.createElement("td") ;
td1.setAttribute("height","12") ;
ah1 = document.createElement("a") ;
im1 = document.createElement("img") ;
ah1.setAttribute("href",'javascript:move(1)') ;
im1.setAttribute("onclick",'move(1)') ;
nomimg = "h" + i + ".gif"
im1.setAttribute("src",nomimg)
pegimg = "peg" + i + ".gif"
im1.setAttribute("alt",pegimg)
im1.setAttribute("width",'140') ;
im1.setAttribute("height","20") ;
td1.appendChild(ah1) ;
td1.appendChild(im1) ;
// document.writeln("<td><a href='javascript:move(2)' title=''><img src='h0.gif' border=0 width=140 height=20 alt=' '><\/a><\/td>");
td2 = document.createElement("td") ;
ah2 = document.createElement("a") ;
im2 = document.createElement("img") ;
ah2.setAttribute("href",'javascript:move(2)') ;
im2.setAttribute("onclick",'move(2)') ;
im2.setAttribute("src",'h0.gif') ;
im2.setAttribute("alt",'h0.gif') ;
im2.setAttribute("width","140") ;
im2.setAttribute("height","20") ;
td2.appendChild(ah2) ;
td2.appendChild(im2) ;
// document.writeln("<td><a href='javascript:move(3)' title=''><img src='h0.gif' border=0 width=140 height=20 alt=' '><\/a><\/td>");
td3 = document.createElement("td") ;
ah3 = document.createElement("a") ;
im3 = document.createElement("img") ;
ah3.setAttribute("href",'javascript:move(3)') ;
im3.setAttribute("onclick",'move(3)') ;
im3.setAttribute("src",'h0.gif') ;
im3.setAttribute("alt",'h0.gif') ;
//im3.setAttribute("height",20) ;
td3.appendChild(ah3) ;
td3.appendChild(im3) ;
tr1.appendChild(td1) ;
tr1.appendChild(td2) ;
tr1.appendChild(td3) ;
tp.appendChild(tr1) ;
// POUR TEST : alert(i)
} ; // fin de si
tr2 =document.createElement("tr") ;
// document.writeln("<td bgcolor='#3333cc' colspan=3 ><img src='pixel.gif' border=0 height=10 alt=''><\/td>");
td4 = document.createElement("td") ;
im4 = document.createElement("img") ;
im4.setAttribute("src",'pixel.gif') ;
im4.setAttribute("title",'pixel.gif') ;
td4.setAttribute("bgcolor",'#3333cc') ;
td4.setAttribute("colspan",3 ) ;
td4.appendChild(im4) ;
tr2.appendChild(td4) ;
// POUR TEST : tp.setAttribute("border",'1') ;
tp.appendChild(tr2) ;
document.getElementById("pegs").appendChild(tp) ;
} // fin de fonction pegsInit
// ########################################################################
// ########################################################################
function voirpage() {
// ########################################################################
// ## ---------------------------------------------------------------------
// ## gestion des paramètres
// ## ---------------------------------------------------------------------
larg = document.getElementById("larg").value ;
document.getElementById("visu_source").setAttribute("cols",larg) ;
document.getElementById("visu_source").value = "" ;
url = document.getElementById("url").value ;
src = document.getElementById("mv_s") ;
ren = document.getElementById("mv_r") ;
if (src.checked) { modevisu = "source" ; }
if (ren.checked) { modevisu = "rendu" ; }
/* pour debug
txt = "\n tout va bien \n" ;
document.getElementById("visu_source").value = txt
msg = " url = " + url
document.getElementById("visu_source").value += msg + "\n"
msg = " modevisu = " + modevisu
document.getElementById("visu_source").value += msg + "\n"
*/
// ## ---------------------------------------------------------------------
// ## récupération du contenu en mode source
// ## ---------------------------------------------------------------------
var xhr ;
try { xhr = new ActiveXObject('Msxml2.XMLHTTP'); }
catch (e1) {
try { xhr = new ActiveXObject('Microsoft.XMLHTTP'); }
catch (e2) {
try { xhr = new XMLHttpRequest(); }
catch (e3) { xhr = false; }
}
} // fin du try/catch
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
if (xhr.status == 200) {
// on transmet tout le fichier
msg = xhr.responseText
// test : msg = "hello"
msg1 = msg
msg2 = msg
// on ne garde que ce qu'il y a entre <body> et </body>
idb = msg.indexOf("<body") ;
if (idb>-1) {
msg2 = msg.substring(idb) ;
msg2 = msg2.substring(1+msg2.indexOf(">")) ;
msg2 = msg2.substring(0,msg2.indexOf("</body>")) ;
// alert(msg2)
} ; // fin si
msg2 = "pomme"
document.getElementById("visu_source").value += msg1
var txt = document.createTextNode("hello")
var par = document.createElement("p")
//document.getElementById("rendu_source").appendChild(txt)
//document.getElementById("rendu_source").firstChild.nodeValue.innerHTML= msg1
//document.body.insertBefore(par,document.getElementById("rendu_source"))
document.getElementById('body').appendChild(par)
} else {
document.getElementById("visu_source").value += "Error code " + xhr.status ;
} ; // fin de xhr.status == 200
} ; // fin de xhr.readyState == 4
} ; // fin de fonction xhr.onreadystatechange
// il ne doit pas y avoir marqué http:// dans l'url
if (url.substring(0,7)=="http://") {
url = "contenupage?url="+url ;
/*
msg = " on utilise l'url = " + url
document.getElementById("visu_source").value += msg + "\n"
*/
} ; // fin de si_
xhr.open("GET", url, true);
xhr.send(null);
} ; // fin fonction voirpage
// ##########################################################
// (gH) -_- sen_eux_et_nous.js ; TimeStamp (unix) : 13 Octobre 2008 vers 13:59
// ##########################################################
function comptabilise(valeur,equipe) {
// ##########################################################
if (equipe=="EUX") {
elt = document.getElementById('EQ_EUX')
} else {
elt = document.getElementById('EQ_NOU')
} ; // fin de si
elt.value = parseInt(elt.value) + parseInt(valeur) ;
} // fin de fonction comptabilise
// ##########################################################
function raz1() {
// ##########################################################
document.getElementById('EQ_EUX').value = 0 ;
document.getElementById('EQ_NOU').value = 0 ;
} // fin de fonction raz1
// ##########################################################
// ##########################################################
function score(valeur,equipe) {
// ##########################################################
document.getElementById(equipe).value = parseInt( document.getElementById(equipe).value) + valeur ;
} // fin de fonction comptabilise
// ##########################################################
function score2(valeur,equipe) {
// ##########################################################
// la ligne qui suit est pour Internet Explorer
document.getElementById(equipe).innerText = parseInt( document.getElementById(equipe).innerText) + valeur ;
// la ligne qui suit est pour Firefox
document.getElementById(equipe).textContent = parseInt( document.getElementById(equipe).textContent) + valeur ;
} // fin de fonction comptabilise
// ##########################################################
// (gH) -_- sen_horloge.js ; TimeStamp (unix) : 20 Octobre 2008 vers 18:41
// ##########################################################
function ajoutTemps(increment,unite) {
// ##########################################################
// alert(increment+" POUR "+unite) ;
// les deux lignes qui suivent sont pour Firefox
h = document.getElementById("heur").textContent ;
m = document.getElementById("minu").textContent ;
// les deux lignes qui suivent sont pour Internet Explorer
FF = 1 ;
if (h==undefined) {
h = document.getElementById("heur").innerText ;
m = document.getElementById("minu").innerText ;
FF = 0 ;
} ; // fin de si
// gérons les 0x en de "vrais" x
if (parseInt(h,10)>0) {
if (h.charAt(0)=="0") { h = h.charAt(1) } ;
} ; // fin de si sur h
if (parseInt(m,10)>0) {
if (m.charAt(0)=="0") { m = m.charAt(1) } ;
} ; // fin de si sur m
h = parseInt(h,10) ;
m = parseInt(m,10) ;
// on gère séparément et dans cet ordre les minutes puis les heures à cause de 23 h 59
if (unite=="minu") {
m = m + increment ;
} ; // fin si sur les minutes
if (unite=="heur") {
h = h + increment ;
} ; // fin si sur les minutes
if (m==-1) {
m = 59 ;
h = h - 1 ;
} ; // fin si sur m = -1
if (m==60) {
m = 0 ;
h = h + 1 ;
} ; // fin si sur m = 60
if (h==24) {
h = 0 ;
} ; // fin si sur h = 24
if (h==-1) {
h = 23 ;
} ; // fin si sur h = -1
// règle GH : changer d'heure remet les minutes à 00
// if (unite=="heur") { m = "00" } ;
// on écrit proprement 09 au lieu de 9
// donc on met f devant le nom des variables
// comme mnémonique de format
fh = h ;
if (h<10) { fh = "0"+h ; }
fm = m ;
if (m<10) { fm = "0"+m ; }
if (FF==1) {
// les deux lignes qui suivent sont pour Firefox
document.getElementById("heur").textContent = fh ;
document.getElementById("minu").textContent = fm ;
} else {
// les deux lignes qui suivent sont pour Internet Explorer
document.getElementById("heur").innerText = fh ;
document.getElementById("minu").innerText = fm ;
} ; // fin si
} // fin de fonction ajoutTemps
// ##########################################################
// (gH) -_- tutajax.js ; TimeStamp (unix) : 27 Décembre 2009 vers 19:51
// ########################################################################
function ajaxv1(eltradio) {
// ########################################################################
var xhr;
try { xhr = new ActiveXObject('Msxml2.XMLHTTP'); }
catch (e) {
try { xhr = new ActiveXObject('Microsoft.XMLHTTP'); }
catch (e2) {
try { xhr = new XMLHttpRequest(); }
catch (e3) { xhr = false; }
}
} // fin du catch
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
if (xhr.status == 200) {
// on transmet tout le fichier
document.getElementById("ajax1").firstChild.data = xhr.responseText ;
} else {
document.getElementById("ajax1").firstChild.data = "Error code " + xhr.status ;
} ; // fin de xhr.status == 200
} ; // fin de xhr.readyState == 4
} ; // fin de fonction xhr.onreadystatechange
var url = "tutajax4.php" ;
if (eltradio[0].checked) {
url = "tutajax_send1a.txt" ;
} else {
url = "tutajax_send1b.txt" ;
} ; // fin si
xhr.open("GET", url, true);
xhr.send(null);
} ; // fin fonction ajaxv1
// ########################################################################
function ajaxv2(eltselect) {
// ########################################################################
var xhr;
try { xhr = new ActiveXObject('Msxml2.XMLHTTP'); }
catch (e) {
try { xhr = new ActiveXObject('Microsoft.XMLHTTP'); }
catch (e2) {
try { xhr = new XMLHttpRequest(); }
catch (e3) { xhr = false; }
}
} // fin du catch
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
if (xhr.status == 200) {
// on commence par retirer les sauts de ligne
var texte = xhr.responseText ;
var er1 = new RegExp("\n","g") ;
texte = texte.replace(er1,"") ;
// puis on découpe en fonction des points-virgules
var er2 = new RegExp(";","g") ;
var er3 = new RegExp("=") ;
var tab = texte.split(er2) ;
for (ide=0;ide<tab.length;ide++) {
// enfin, on découpe par rapport au symbole égal
var mots = tab[ide].split(er3) ;
// si on trouve la date, on renvoie l'évènement
if (mots[0]==ladate) {
document.getElementById("ajax2").value = mots[1] ;
} ; // fin si
} ; // fin pour ide
} else {
document.getElementById("ajax2").value = "Error code " + xhr.status ;
} ; // fin de xhr.status == 200
} ; // fin de xhr.readyState == 4
} ; // fin de fonction xhr.onreadystatechange
var ladate = eltselect.options[eltselect.selectedIndex].value ;
var url = "tutajax_send2.txt" ;
xhr.open("GET", url, true);
xhr.send(null);
} ; // fin fonction ajaxv2
// ########################################################################
function ajaxv3(eltradio) {
// ########################################################################
var xhr;
try { xhr = new ActiveXObject('Msxml2.XMLHTTP'); }
catch (e) {
try { xhr = new ActiveXObject('Microsoft.XMLHTTP'); }
catch (e2) {
try { xhr = new XMLHttpRequest(); }
catch (e3) { xhr = false; }
}
} // fin du catch
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
if (xhr.status == 200) {
document.getElementById("ajax3").innerHTML = xhr.responseText ;
} else {
document.getElementById("ajax3").innerHTML = "Error code " + xhr.status ;
} ; // fin de xhr.status == 200
} ; // fin de xhr.readyState == 4
} ; // fin de fonction xhr.onreadystatechange
var url = "tutajax4.php" ;
if (eltradio[0].checked) {
url = "tutajax_send3a.html" ;
} else {
url = "tutajax_send3b.html" ;
} ; // fin si
xhr.open("GET", url, true);
xhr.send(null);
} ; // fin fonction ajaxv3
// ########################################################################
function ajaxv4(eltselect) {
// ########################################################################
var xhr;
try { xhr = new ActiveXObject('Msxml2.XMLHTTP'); }
catch (e) {
try { xhr = new ActiveXObject('Microsoft.XMLHTTP'); }
catch (e2) {
try { xhr = new XMLHttpRequest(); }
catch (e3) { xhr = false; }
}
} // fin du catch
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
if (xhr.status == 200) {
document.getElementById("ajax4").value = ""
dct = xhr.responseXML ;
tab = dct.getElementsByTagName("article") ;
for (ide=0;ide<tab.length;ide++) {
var article = tab[ide] ; // article courant
var vu = 0 // indique si on a vu l'article recherché
var nbet = 0 // nombre d'enfants textes
// on passe en revue les enfants
indc = 0 ; // indice courant d'enfant
while (indc<article.childNodes.length) {
currentElementChild=article.childNodes[indc];
if (vu<2) {
// s'il s'agit d'un noeud texte
if (currentElementChild.nodeType==1) {
nbet = nbet + 1
// et s'il correspond au texte cherché
if (currentElementChild.textContent==larticle) {
vu = 1 ;
} ; // fin si
// alors on récupère le texte suivant
if (vu==1) {
if (nbet==2) {
prix = currentElementChild.textContent
document.getElementById("ajax4").value += prix + " euros" ;
vu = 2 ;
indc = article.childNodes.length + 1
} ; // fin si
} ; // fin si
} ; // fin si
} ; // fin si
indc++
currentElementChild=article.childNodes[indc];
} // fin de tant que
} ; // fin pour ide
} else {
document.getElementById("ajax4").value = "Error code " + xhr.status ;
} ; // fin de xhr.status == 200
} ; // fin de xhr.readyState == 4
} ; // fin de fonction xhr.onreadystatechange
// ceci est le mot cherché :
var larticle = eltselect.options[eltselect.selectedIndex].value ;
var url = "tutajax_send4a.xml" ;
xhr.open("GET", url, true);
xhr.send(null);
} ; // fin fonction ajaxv4
// ########################################################################
function ajaxv5(eltselect) {
// ########################################################################
var xhr;
try { xhr = new ActiveXObject('Msxml2.XMLHTTP'); }
catch (e) {
try { xhr = new ActiveXObject('Microsoft.XMLHTTP'); }
catch (e2) {
try { xhr = new XMLHttpRequest(); }
catch (e3) { xhr = false; }
}
} // fin du catch
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
if (xhr.status == 200) {
document.getElementById("ajax5").value = ""
dct = xhr.responseXML ;
tab = dct.getElementsByTagName("article") ;
for (ide=0;ide<tab.length;ide++) {
var article = tab[ide] ;
if (article.getAttribute("nom")==larticle) {
leprix = article.getAttribute("prix") ;
document.getElementById("ajax5").value += leprix + " euros" ;
} ; // fin si
} ; // fin pour ide
} else {
document.getElementById("ajax5").value = "Error code " + xhr.status ;
} ; // fin de xhr.status == 200
} ; // fin de xhr.readyState == 4
} ; // fin de fonction xhr.onreadystatechange
// ceci est le mot cherché :
var larticle = eltselect.options[eltselect.selectedIndex].value ;
var url = "tutajax_send4b.xml" ;
xhr.open("GET", url, true);
xhr.send(null);
} ; // fin fonction ajaxv5
// ########################################################################
function ajaxv6(eltradio) {
// ########################################################################
var xhr ;
try { xhr = new ActiveXObject('Msxml2.XMLHTTP'); }
catch (e) {
try { xhr = new ActiveXObject('Microsoft.XMLHTTP'); }
catch (e2) {
try { xhr = new XMLHttpRequest(); }
catch (e3) { xhr = false; }
}
} // fin du catch
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
if (xhr.status == 200) {
// on transmet tout le fichier
var tabdates = eval('(' + xhr.responseText + ')') ;
msg = " Jour du rendez-vous, le " ;
msg += tabdates[numj] ;
msg += " novembre "
document.getElementById("ajax6").firstChild.data = msg
} else {
document.getElementById("ajax6").firstChild.data = "Error code " + xhr.status ;
} ; // fin de xhr.status == 200
} ; // fin de xhr.readyState == 4
} ; // fin de fonction xhr.onreadystatechange
var url = "tutajax_send5.txt" ;
var numj = -1 ;
for (idj=0;idj<=2;idj++) {
if (eltradio[idj].checked) { numj = idj ; } ;
} ; // fin pour
xhr.open("GET", url, true);
xhr.send(null);
} ; // fin fonction ajaxv6
// ########################################################################
// ###########################################################################
function ping() {
// ###########################################################################
top.frames["gauche"].document.getElementById("vg").value += "ping !"
top.document.getElementsByTagName("frameset")[0].cols = "10%,90%"
} ; // fin de fonction ping
// ###########################################################################
function pong() {
// ###########################################################################
top.frames["droite"].document.getElementById("vd").value += "pong !"
top.document.getElementsByTagName("frameset")[0].cols = "90%,10%"
} ; // fin de fonction ping
// ###########################################################################
// (gH) -_- diaporama_gen.js ; TimeStamp (unix) : 22 Mai 2010 vers 17:05
// #######################################
function forceDuree(d) {
// #######################################
// si d est fourni, on l'utilise comme durée
// sinon, on utilise la valeur du formulaire
var laduree = top.frames[1].document.getElementById("duree").value
// rem : var est obligatoire
if (d!=undefined) { laduree = d }
var old_url = top.location.href
if (old_url.indexOf("?")==-1) { // aucun paramètre
var new_url = old_url + "?diapo=1&duree="+laduree
} else {
if (old_url.indexOf("duree=")==-1) { // aucun paramètre
var new_url = old_url + "&duree="+laduree
} else {
var new_url = old_url.replace(/duree=\d+/,"duree="+laduree)
} ; // fin si
} ; // fin si
top.frames[1].document.getElementById("duree").value = laduree
top.location.href = new_url
} ; // fin de fonction forceDuree
// #######################################
function changeDiapo(num) {
// #######################################
if (num=="=") { forceDuree(10000) ; } else {
var old_url = top.location.href
var nbdiapos = top.frames[1].document.getElementById("nbv").value
if (old_url.indexOf("diapo=")==-1) { // pas de numéro de diapo
var numdiapo = 1
} else {
var attdiapo = old_url.match(/diapo=\d+/)[0] ;
var numdiapo = parseInt(attdiapo.match(/\d+/)[0]) ;
} ; // fin si
if (num=="d") { numdiapo = 1 ; } // début
if (num=="p") { numdiapo -= 1 ; } // précédente
if (num=="s") { numdiapo += 1 ; } // suivante
if (num=="f") { numdiapo = nbdiapos ; } // fin
if (numdiapo>nbdiapos) { numdiapo = 1 ; }
if (numdiapo<=0) { numdiapo = nbdiapos ; }
if (old_url.indexOf("?")==-1) { // aucun paramètre
top.location.href = old_url + "?diapo=" + numdiapo
} else {
top.location.href = old_url.replace(/diapo=\d+/,"diapo="+numdiapo)
} ; // finsi
} ; // fin si
} ; // fin de fonction forceDuree
// #######################################
function navigation() {
// #######################################
// pour ajouter du texte avec entité, passer par de l'unicode,
// par exemple : ==> \u00A0
top.frames[1].document.getElementById("td1").setAttribute("class","visible") ;
top.frames[1].document.getElementById("td2").setAttribute("class","visible") ;
top.frames[1].document.getElementById("tnav").setAttribute("class","visible") ;
top.frames[1].document.getElementById("tnav").setAttribute("border","thin solid") ;
top.frames[1].document.getElementById("tnav").setAttribute("border-color","black") ;
top.frames[1].document.getElementById("tnav").setAttribute("border-collapse","collapse") ;
} ; // fin de fonction navigation
|