la_pin
Messages postés275Date d'inscriptionmercredi 11 août 2004StatutMembreDernière intervention15 décembre 2005
-
15 juin 2005 à 13:23
cs_darkman2
Messages postés121Date d'inscriptionmardi 3 mai 2005StatutMembreDernière intervention31 décembre 2005
-
20 juil. 2005 à 08:56
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_darkman2
Messages postés121Date d'inscriptionmardi 3 mai 2005StatutMembreDernière intervention31 décembre 2005 20 juil. 2005 à 08:56
merci crashtest
Marmotte86
Messages postés34Date d'inscriptionsamedi 21 mai 2005StatutMembreDernière intervention 9 août 2007 7 juil. 2005 à 12:52
aze555666 le plus simple pour éviter de recharger la page à chaque fois, c'est de mettre une balise
, et de changer le contenu html de cette balise :)
pour ça, il faut modifier la fonction disp(txt) en :
function disp(txt) {
document.getElementById("message").innerHTML= txt;
setTimeout("msg.Aff()",5000);
}
avec evidemment ici, la balise div déclarée à la place de l'appel de la fonction msg.Aff() dans le corps de la page :
Pour le premier lancement, il faudrait donc appeler la fonctionà l'aide de l'événement onload de la page :
De cette manière, le message s'inscrit une première fois apres le chargement complet de la page, et change toutes les 5 secondes, sans recharger la page.
ce qui donne au final :
<HTML><HEAD><TITLE>JScript - Un message pour chaque visite</TITLE>
<SCRIPT language=JavaScript>
// Création de la base de données des messages
var msg=new InitMsg();
msg.Add("Bonjour et bienvenue sur http://www.codes-cources.com/jscript");
msg.Add("Des mises à jour et des nouveautés; régulières");
msg.Add("blablablablabla : ");
msg.Add("salut a tous blablablabla");
msg.Add("bonjour comment ca va");
msg.Add("Ne cherchez plus, votre javascript est ici www.codes-sources.com !");
// COMPLETER LA BASE ICI
// msg.Add( );
function disp(txt) {
document.getElementById("message").innerHTML=txt;
setTimeout("msg.Aff()",5000);
}
function InitMsg() {
this.nb_item=0;
this.Add=AddMsg;
this.Aff=AffMsg;
}
function AddMsg(txt) {
var nb = this.nb_item;
this[nb]=txt;
this.nb_item++;
}
function AffMsg() {
var nb = this.nb_item;
var no=Math.round(Math.random(1)*(nb-1));
disp(" "+this[no]+" ");
}
function reload() {
window.location =document.location;
}
</SCRIPT>
<SMALL>La page est rechargée toutes les 5 secondes, pour montrer
l'affichage alétoire des messages</SMALL> </CENTER><!-- Script développé par Darkman--></HTML>
aze555666
Messages postés208Date d'inscriptionmardi 13 avril 2004StatutMembreDernière intervention26 janvier 2009 20 juin 2005 à 21:53
je ne connais pas g chose au js, alors je ne me permettrais pas de mettre un mauvaise note, mais la page qui se recharge toutes les 5 secondes, il y a pas moyende faire autrement? tout le monde n'a pas l'affichage instantané! tu pourrais mettre une page rien que pour afficher le message dans une iframe, pour ne pas avoir à,tout recharger, par exemple.
cs_darkman2
Messages postés121Date d'inscriptionmardi 3 mai 2005StatutMembreDernière intervention31 décembre 2005 16 juin 2005 à 11:36
ok je vais essayer de l'ameliorer la_pin
@+ les programmeurs
la_pin
Messages postés275Date d'inscriptionmercredi 11 août 2004StatutMembreDernière intervention15 décembre 2005 15 juin 2005 à 16:10
Je trouve le script bien pour un débutant du fait qu'il est super simple et qu'il met bien en avant plusieurs fonctions javascript utiles.
Pour la note, je te mets 6/10 car le code n'est pas une nouveauté, tu ne l'as pas conçu et qu'il est quand même archi-basique.
PS: ya un pb dans le titre de ta source ^^
cs_darkman2
Messages postés121Date d'inscriptionmardi 3 mai 2005StatutMembreDernière intervention31 décembre 2005 15 juin 2005 à 16:06
je veux dire la note??
cs_darkman2
Messages postés121Date d'inscriptionmardi 3 mai 2005StatutMembreDernière intervention31 décembre 2005 15 juin 2005 à 16:00
ok la_pin merci pour la remarque
je vais essayer de modifier
mais tu trouve comment le script??
tu me donnes combien pour le note??
la_pin
Messages postés275Date d'inscriptionmercredi 11 août 2004StatutMembreDernière intervention15 décembre 2005 15 juin 2005 à 13:23
J'ai déjà vu ce script quelque-part...
Sinon, il faut vraiment que tu changes tes habitudes de codage html, un script de se met pas entre 2 balises de META (qui n'ont dailleurs rien a faire ici) mais après. Les balises BIG, SMALL, et CENTER sont vieilles maintenant et les attributs du style size etc... s'écrivent size="-1" et non size=-1.
Essaye de coder aux normes, ton codage html risque sinon de ne pas être compatibles partout.
20 juil. 2005 à 08:56
7 juil. 2005 à 12:52
, et de changer le contenu html de cette balise :)
pour ça, il faut modifier la fonction disp(txt) en :
function disp(txt) {
document.getElementById("message").innerHTML= txt;
setTimeout("msg.Aff()",5000);
}
avec evidemment ici, la balise div déclarée à la place de l'appel de la fonction msg.Aff() dans le corps de la page :
Pour le premier lancement, il faudrait donc appeler la fonctionà l'aide de l'événement onload de la page :
De cette manière, le message s'inscrit une première fois apres le chargement complet de la page, et change toutes les 5 secondes, sans recharger la page.
ce qui donne au final :
<HTML><HEAD><TITLE>JScript - Un message pour chaque visite</TITLE>
<SCRIPT language=JavaScript>
// Création de la base de données des messages
var msg=new InitMsg();
msg.Add("Bonjour et bienvenue sur http://www.codes-cources.com/jscript");
msg.Add("Des mises à jour et des nouveautés; régulières");
msg.Add("blablablablabla : ");
msg.Add("salut a tous blablablabla");
msg.Add("bonjour comment ca va");
msg.Add("Ne cherchez plus, votre javascript est ici www.codes-sources.com !");
// COMPLETER LA BASE ICI
// msg.Add( );
function disp(txt) {
document.getElementById("message").innerHTML=txt;
setTimeout("msg.Aff()",5000);
}
function InitMsg() {
this.nb_item=0;
this.Add=AddMsg;
this.Aff=AffMsg;
}
function AddMsg(txt) {
var nb = this.nb_item;
this[nb]=txt;
this.nb_item++;
}
function AffMsg() {
var nb = this.nb_item;
var no=Math.round(Math.random(1)*(nb-1));
disp(" "+this[no]+" ");
}
function reload() {
window.location =document.location;
}
</SCRIPT>
<META content="MSHTML 6.00.2800.1479" name=GENERATOR></HEAD>
<CENTER>Le message du jour est :
<SMALL>La page est rechargée toutes les 5 secondes, pour montrer
l'affichage alétoire des messages</SMALL> </CENTER><!-- Script développé par Darkman--></HTML>
20 juin 2005 à 21:53
16 juin 2005 à 11:36
@+ les programmeurs
15 juin 2005 à 16:10
Pour la note, je te mets 6/10 car le code n'est pas une nouveauté, tu ne l'as pas conçu et qu'il est quand même archi-basique.
PS: ya un pb dans le titre de ta source ^^
15 juin 2005 à 16:06
15 juin 2005 à 16:00
je vais essayer de modifier
mais tu trouve comment le script??
tu me donnes combien pour le note??
15 juin 2005 à 13:23
Sinon, il faut vraiment que tu changes tes habitudes de codage html, un script de se met pas entre 2 balises de META (qui n'ont dailleurs rien a faire ici) mais après. Les balises BIG, SMALL, et CENTER sont vieilles maintenant et les attributs du style size etc... s'écrivent size="-1" et non size=-1.
Essaye de coder aux normes, ton codage html risque sinon de ne pas être compatibles partout.