Combiner deux codes

cs_Rush3r Messages postés 2 Date d'inscription samedi 21 mars 2009 Statut Membre Dernière intervention 22 mars 2009 - 22 mars 2009 à 12:26
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 - 26 mars 2009 à 19:51
Bonjour,
Je ne connais pas grand chose en Javascript, néanmoins je
souhaite ajouté a mon site quelques fonctions que j'ai déjà repérés ici.
Le problème, c'est que je souhaite combiner deux codes : explications :

Voici un code qui permet , lorsqu'on survole de la souris le mot "entrer" d'ouvrir une petite fenêtre avec un message.
html>
 <HEAD>

 <center>Entrer sur le site en passant l'introduction
 
  Entrer </center>
 
 

 </head>
 
 <SCRIPT LANGUAGE= "JavaScript">
 var DeltaX=15 //Distance horizontale du curseur
 var DeltaY=5 //Distance verticale du curseur

 function init02()
 {
 ajout(" C'est ",900)
 ajout("d'avoir
un
peu",1600)
 ajout("de lecture
lorsque
l'on",900)
 ajout("suis des
yeux",900)
 ajout(" ",900)
 letsgo();
 }

 var z =0;
 var i= 0;
 var t;
 var rz=0
 texte= new Array()
 speed= new Array()

 function ajout(txt,delai)
 {
 texte[z]=txt;
 speed[z]=delai;
 z++;
 }
 if (navigator.appName == "Netscape")
 {
 document.captureEvents(Event.MOUSEMOVE);
 document.write('<LAYER NAME="mgdh" top=-100></LAYER>');
 t=1;
 }
 else
 {
 document.write('');
 t=0;
 }

 function letsgo()
 {
 if (t)
 {
 document.mgdh.document.write(texte[i]);
 document.close();
 }
 else document.all.mgdh.innerHTML=texte[i];
 i++;
 if (i>=z) i=0;
 setTimeout("letsgo()",speed[i]);
 }

 function detect02(ev)
 {
 if (t)
 {
 with(document.mgdh)
 {
 left=ev.pageX+DeltaX;
 top=ev.pageY+DeltaY
 };
 }
 else
 {
 with(document.all.mgdh.style)
 {
 left=event.clientX+DeltaX;
 top=event.clientY+DeltaY+document.body.scrollTop
 };
 };
 }
 document.onmousemove=detect02
 </script>

 
 </HTML>

Je souhaite combiner à ce code un autre code qui ferait un compte à rebours puis une redirection dans la fenêtre du message ouverte par l'autre code :

<html>
<head>
<title>Redirection</title>
</head>

<SCRIPT LANGUAGE ="JavaScript">
window.setTimeout("document.form.time.value='5'",1000)
window.setTimeout("document.form.time.value='4'",2000)
window.setTimeout("document.form.time.value='3'",3000)
window.setTimeout("document.form.time.value='2'",4000)
window.setTimeout("document.form.time.value='1'",5000)
window.setTimeout("document.form.time.value='0';location=('http://www.ulimitedforces.ilogames.net/nk');",6000)
</script>
   
<center><FORM METHOD=POST name="form">
&nbsp; secondes avant accès au site.
</FORM> </center>
   
   

</html>

Pouvez vous s'il vous plait m'indiquez comment faire?

5 réponses

Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
22 mars 2009 à 12:56
Bonjour,

ben déjà, il faut te mettre au javascript.
essayer et corriger les erreurs générées, s'il y en a

quand à la redirection, mon foie, t'as pas choisi le plus simple !!!!
déjà, 1 seul setTimeout suffirait ! ( je ne sais pas où
        tu as récupérer ça, mais franchement.... )
de plus, en pur html, on fait !
        <meta http-equiv="Refresh"
                content="délai en secondes; URL=adresse de la page à lancer">

Cordialement [mon Site] [M'écrire] Bul
0
jdmcreator Messages postés 647 Date d'inscription samedi 30 décembre 2000 Statut Membre Dernière intervention 20 juillet 2012 7
22 mars 2009 à 14:07
Bonjour !
Comme le dit Bul3, il faut absolument que tu te mettes au Javascript. Mais fait attention avec ces codes, ils contiennent plusieurs erreurs. Par exemple, le texte NE PEUT PAS être mis dans le <head>.

Aussi, le premier code ne semble pas fonctionner avec Safari. Pour préciser ton messages, le premier code N'OUVRE PAS de petite fenêtre qui va suivre la souris. En fait, il crée un élément HTML qui va suivre la souris. Tu me suis ? Il est donc impossible d'ouvrir une page web. Pour ourir une page web, il faudrait soit utiliser la fonction window.open() de javascript ou remplacer l'élément créé (ici une balise span) par une iframe qui ouvrira la page.

Voici un exemple de code que cela pourrait donner avec les deux codes mixer ensemble :



<HTML><HEAD><title>Test</title>
<SCRIPT LANGUAGE= "JavaScript">
var DeltaX=15 //Distance horizontale du curseur
var DeltaY=5 //Distance verticale du curseur

var z=0;
var i=0;
var t;
var rz=0
texte= new Array()
speed= new Array()

function ajout(txt,delai)
{
texte[z]=txt;
speed[z]=delai;
z++;
}
if (navigator.appName == "Netscape")
{
document.captureEvents(Event.MOUSEMOVE);
document.write('<LAYER NAME="mgdh" top=-100></LAYER>');
t=1;
}
else
{
document.write(' ');
t =0;
}

function letsgo()
{
if (t)
{
document.mgdh.document.write(texte[i]);
document.close();
}
else document.all.mgdh.innerHTML=texte[i];
i++;
if (i>=z) i=0;
setTimeout("letsgo()",speed[i]);
}

function detect02(ev)
{
if (t)
{
with(document.mgdh)
{
left=ev.pageX+DeltaX;
top=ev.pageY+DeltaY
};
}
else
{
with(document.all.mgdh.style)
{
left=event.clientX+DeltaX;
top=event.clientY+DeltaY+document.body.scrollTop
};
};
}
document.onmousemove=detect02
function lance() {
window.setTimeout("document.form.time.value='5'",1000)
window.setTimeout("document.form.time.value='4'",2000)
window.setTimeout("document.form.time.value='3'",3000)
window.setTimeout("document.form.time.value='2'",4000)
window.setTimeout("document.form.time.value='1'",5000)
window.setTimeout("document.form.time.value='0';document.getElementById('mgdh').style.display='';document.getElementById('mgdh').src='http://www.ulimitedforces.ilogames.net/nk';",6000);
}
</script>
</head>

<center>Entrer sur le site en passant l'introduction

Entrer </center>



<center><FORM METHOD=POST name="form">
  secondes avant accès au site.
</FORM> </center>

</html>

Je crois que tu peux adapter ;). Quand à la fameuse balise META dont parlait Bul3, je ne te la recommande pas puisque cela renverra le visiteur à l'ouverture de la page et non au survol du texte. Finalement, concernant mon code, la page ouverte est très petite (très très très petite :P)

Pour l'agrandir, je crois que tu connais assez bien le HTML. Le code est dans la fonction ajout. Finalement, si tu souhaites que la "petite fenêtre" soit là dès le début. Il suffit de modifier le style DISPLAY de l'iframe.

Je crois que j'ai été assez clair dans mes explications, s'il y a un problème, simplement me le signaler ;)

------JDMCreator
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
22 mars 2009 à 14:20
function lance() {
window.setTimeout("document.form.time.value='5'",1000)
window.setTimeout("document.form.time.value='4'",2000)
window.setTimeout("document.form.time.value='3'",3000)
window.setTimeout("document.form.time.value='2'",4000)
window.setTimeout("document.form.time.value='1'",5000)
window.setTimeout("document.form.time.value='0';

mais quelle horreur !!!
0
jdmcreator Messages postés 647 Date d'inscription samedi 30 décembre 2000 Statut Membre Dernière intervention 20 juillet 2012 7
22 mars 2009 à 14:28
Je n'ai pas modifier la fonction lance(), je n'ai pas pris le temps mais ça serait facilement faisable et je crois que Rush3r pourrait capable de trouver comment faire. Il suffirait d'un window.setTimeOut qui baisserait d'un point chaque seconde la valeur de l'input

------JDMCreator
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
26 mars 2009 à 19:51
Bonjour,
Je rajouterais que FireFox ne va pas aimer because...
if (navigator.appName == "Netscape"){

  document.captureEvents(Event.MOUSEMOVE);
  document.write('<LAYER
NAME="mgdh" top=-100></LAYER>');
  t=1;
}
;O)
0
Rejoignez-nous