Trucsweb.com

Forum de discussion

 Forum « Flash et Shockwave » (archives)

Re: Texte dynamique changeant en fonction de l'heure

Envoyé: 17 novembre 2004, 9h51 par Oznog


Salut,

Simplifiont un peu!

Tout d'abord, avec les dates prend l'habitude d'utiliser quelques fonctions et constantes, tu va voir que ça simplifie beaucoup. Et tu as TROIS codes complètement différent, le premier c'est l'assignation de "verif" et "verif2" avec tes zéros "réalistes", le second l'assignation de ton horloge (la rotation de aiguil_hour, aiguil_minute...) et le troisième ton histoire de "planning" que nous verront après.

1. Les jours et mois avec une fonction pour tes zéros "réalistes".

var aMoisfr = ["Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"];
var aJourfr = ["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"];

String.prototype.twZero=function() {
return (this < 10) ? '0' + this : this;
}

// Et donc

dMaintenant = new Date();
var jour = twZero(dMaintenant.getDate());
semaine = aJourfr[dMaintenant.getDay()];
mois = aMoisfr[dMaintenant.getMonth()];
annee = dMaintenant.getFullYear ();
heure = twZero(dMaintenant.getHours());
minute = twZero(dMaintenant.getMinutes());
seconde = twZero(dMaintenant.getSeconds());

verif = heure+":"+minute+":"+seconde;
verif2= semaine +" "+jour+" "+mois+" "+annee;

C'est bien beau mais à partir de là, les variables jour, mois, heure, minute, seconde NE SONT PLUS DES NOMBRES, alors ton code des aiguille ne peut plus fonctionner. Tu peux simplement les convertir en nombre avec "number()" mais voyons l'affaire autrement. Utilise aussi une fonction pour le format de date/heure.

// Code complet qui règle les deux premier codes.

var aMoisfr = ["Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"];
var aJourfr = ["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"];
function twZero(nNombre) {return (nNombre < 10) ? '0' + nNombre : nNombre;}

Date.prototype.twDateFr = function(){
// Retourne une chaine de caractère, la date
return aJourfr[this.getDay()] + ", " + this.getDate() + " " + aMoisfr[this.getMonth()] + " " + this.getFullYear();
}

Date.prototype.twHeureFr = function(){
// Retourne une chaine de caractère, l'heure
return twZero(this.getHours()) + ":" + twZero(this.getMinutes()) + ":" + twZero(this.getSeconds());
}

dMaintenant = new Date();
verif2 = dMaintenant.twDateFr();
verif = dMaintenant.twHeureFr();
nHeure = dMaintenant.getHours();
nHeure = (nHeure > 12) ? nHeure-12 : nHeure;
aiguil_hour._rotation = ((nHeure*360)/12);
aiguil_minute._rotation = ((dMaintenant.getMinutes()*360)/60);
aiguil_sec._rotation = ((dMaintenant.getSeconds()*360)/60);

2. MAINTENANT TON HISTOIRE DE PLANNING!

J'aimerais que tu précise les conditions. Car pour l'instant je boggue autant que le compilateur Flash sur tes tests de conditions.

TU NE PEUX PAS ADITIONNER des tests l'un après l'autre simplement à les séparent par un point virgule. Et ce avec tout langage de programmation.

J'imagine que tu veux les combiner (p.s. utilise "==" au lieu de "eq". note aussi que "&&" = "ET" alors que "||" = "OU") ;

...
nJour = dMaintenant.getDay();
nHeures = dMaintenant.getHours();
nMinutes = dMaintenant.getMinutes();

if ( (nJour=="0")||(nHeure==6) ) {
planning1="Week-End";
planning3a=" ";
planning3b=" ";
planning4=" ";
planning5a=" ";
planning5b=" ";
planning6=" ";
} else if ( (nJour=="1")&&(nHeure==9)&&(nMinutes>=8) ) {...} else...

Mais cette portion de code pourra toujours être simplifié, optimisé, c'Est du cas par cas et surtout normalement on essai de trouver une astuce pour normaliser tout ça, un peu comme les array des jours et mois.

Ciao
Oznog


Réponses

 Aucune réponse à ce message... 
Aucun médias sociaux
X

Trucsweb.com Connexion

Connexion

X

Trucsweb.com Mot de passe perdu

Connexion

X

Trucsweb.com Conditions générales

Conditions

Responsabilité

La responsabilité des Trucsweb.com ne pourra être engagée en cas de faits indépendants de sa volonté. Les informations mises à disposition sur ce site le sont uniquement à titre purement informatif et ne sauraient constituer en aucun cas un conseil ou une recommandation de quelque nature que ce soit.

Aucun contrôle n'est exercé sur les références et ressources externes, l'utilisateur reconnaît que les Trucsweb.com n'assume aucune responsabilité relative à la mise à disposition de ces ressources, et ne peut être tenue responsable quant à leur contenu.

Droit applicable et juridiction compétente

Les règles en matière de droit, applicables aux contenus et aux transmissions de données sur et autour du site, sont déterminées par la loi canadienne. En cas de litige, n'ayant pu faire l'objet d'un accord à l'amiable, seuls les tribunaux canadien sont compétents.

X

Trucsweb.com Trucsweb

X

Trucsweb.com Glossaire

X

Trucsweb.com Trucsweb

X

Trucsweb.com Trucsweb

Conditions

Aucun message!

Merci.

X
Aucun message!
X

Trucsweb.com Créer un compte

Créer un compte

.
@