Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1801 connectés 

  FORUM HardWare.fr
  Programmation

  [javascript] liens aléatoires et rollovers CA MARCHE !!

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[javascript] liens aléatoires et rollovers CA MARCHE !!

n°116108
mechkurt
Posté le 22-03-2002 à 11:40:56  profilanswer
 

j'ai une page avec 10 rollover et je voudrais que les liens soit frequement intervertit pour "perturber" la navigation.  
j'ai crée un lien vers liens.js dont voici le contenu:  
var HazzLien=new Array();
HazLien[0]= 'menucine.htm';
HazLien[1]= 'menubook.htm';  
HazLien[2]= 'menuBD.htm';  
HazLien[3]= 'menutish.htm';  
HazLien[4]= 'menusike.htm';  
HazLien[5]= 'CVrealis.htm';  
HazLien[6]= 'CVjeuvid.htm';  
HazLien[7]= 'CVgraphi.htm';  
HazLien[8]= 'CVgalere.htm';  
HazLien[9]= 'CVecriva.htm';  
PhraseTiree = Math.round(Math.random() * (HazLien.length-1))  
dans ma page comment puis je inserer le lien rand ainsi crée dans un rollover de ce type:  
<a href="CVecriva.htm" target="_blank" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('ecrivain',
 
 
 
'','../image/Coin-NO.gif',
 
 
 
1)"><img name="ecrivain" border="0" src="../image/Coin-NO.jpg" width="200" height="300"></a>  
j'ai essayé plusieur syntax a base de ' de + et de HazLien[PhraseTiree] a l'interieur du href=" " mais rien ne marche  
ca ce voit que je debute  :(
la reference au liens.js n'est pas obligatoire car je n'utliserais cette fonction que dans la page principale mais l'exemple que j'ai copié fonctionnait comme ca  ;)
 
Derniere question, avec cette technique tout mes liens (rollover ) auront la même destination (jusqu'au prochain raffraichissement) je comptait m'en sortir avec un balise refresh:5;menu.htm  
y'a t'il +simple ?  
 
merci beaucoups

 

[jfdsdjhfuetppo]--Message édité par mechkurt--[/jfdsdjhfuetppo]

mood
Publicité
Posté le 22-03-2002 à 11:40:56  profilanswer
 

n°116171
mechkurt
Posté le 22-03-2002 à 15:38:12  profilanswer
 

j'ai lu le post sur les topics les + foireux (et meme moi dont la derniere programation etait un casse brique sur ti-82 il y 8 ans <moment de gloire>j'avais meme reussi a ajouter une touche pause</moment de gloire> j'ai bien rigolé)
 
j'espere que je n'entre pas dans la categorie des chieurs qui pourrisses les posts (et si j'ai posté dans le mauvais forum dite le moi)
 
bien sur tout ceci n'est qu' up deguise ;)

 

[jfdsdjhfuetppo]--Message édité par mechkurt--[/jfdsdjhfuetppo]

n°117054
mechkurt
Posté le 25-03-2002 à 09:01:59  profilanswer
 

up

n°117108
mechkurt
Posté le 25-03-2002 à 12:00:07  profilanswer
 

uuuuuuuuuuuuuuuup !

n°117207
mechkurt
Posté le 25-03-2002 à 15:25:23  profilanswer
 

Croyez pas que j'essaie pas mais je galere, pourtant ca doit pas etre compliquez, et si je modifie mon rollover comme ca :
<a href="CVecriva.htm" target="_blank" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('ecrivain',
 
'','../image/Coin-NO.gif',
 
1)" onclick="NewWindow(this.href,'ecrivain
9;,'900','550','no&
#039;);return false;"><img name="ecrivain" border="0" src="../image/Coin-NO.jpg" width="200" height="300"></a>
sachant que ma fonction NewWidow s'articule comme ca :
<!--
Begin
function NewWindow(mypage, myname, w, h, scroll) {
var winl = (screen.width - w) / 2;
var wint = (screen.height - h) / 2;
winprops = 'height='+h+',width='+w+&
#039;,top='+wint+',left='+winl+
',scrollbars='+scroll+',resizable
'
win = window.open(mypage, myname, winprops)
if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
}
//  End -->
 
En fait cette fonction (pompée evidement) permet (mais c'est pas a vous que je vais l'apprendre) de faire une nouvelle pop-up de taille définie et centré. Je m'en sert ailleur dans le site et elle vas bien merci ;)
mais il doit pas etre trops difficile de remplacer 'this.href' par le href tiré au hasard but comment ?

n°117210
petoulachi
A fortiori, brigadier chef
Posté le 25-03-2002 à 15:28:48  profilanswer
 

bon e veux bien t'aider, mais essaie de mettre le code plus lisible parce que là ...

n°117211
petoulachi
A fortiori, brigadier chef
Posté le 25-03-2002 à 15:31:04  profilanswer
 

mechkurt a écrit a écrit :

var HazzLien=new Array();  
HazLien[1]= 'menubook.htm';  



 
 
deja là ya soucis ...

n°117215
petoulachi
A fortiori, brigadier chef
Posté le 25-03-2002 à 15:41:21  profilanswer
 

mechkurt a écrit a écrit :

Croyez pas que j'essaie pas mais je galere, pourtant ca doit pas etre compliquez, et si je modifie mon rollover comme ca :
<a href="CVecriva.htm" target="_blank" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('ecrivain',
 
 
 
'','../image/Coin-NO.gif',
 
 
 
1)" onclick="NewWindow(this.href,'ecrivain
9;,'900','550','no&

 


#039;);return false;"><img name="ecrivain" border="0" src="../image/Coin-NO.jpg" width="200" height="300"></a>
sachant que ma fonction NewWidow s'articule comme ca :
<!--
Begin
function NewWindow(mypage, myname, w, h, scroll) {
var winl = (screen.width - w) / 2;
var wint = (screen.height - h) / 2;
winprops = 'height='+h+',width='+w+&

 


#039;,top='+wint+',left='+winl+

 


',scrollbars='+scroll+',resizabl
 
e
'
win = window.open(mypage, myname, winprops)
if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
}
//  End -->
 
En fait cette fonction (pompée evidement) permet (mais c'est pas a vous que je vais l'apprendre) de faire une nouvelle pop-up de taille définie et centré. Je m'en sert ailleur dans le site et elle vas bien merci ;)
mais il doit pas etre trops difficile de remplacer 'this.href' par le href tiré au hasard but comment ?  




Bon.... alors on va faire comme ça :[/CODE]
<a href="CVecriva.htm" target="_blank" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('ecrivain',
 
'','../image/Coin-NO.gif',
 
1)" onclick="loadPage();"><img name="ecrivain" border="0" src="../image/Coin-NO.jpg" width="200" height="300"></a>
[/CODE]
Ensuite, il faut creer la fonction loadPage() qui va appeler ta fonction NewWindow(...)
donc :

Code :
  1. function loadPage()
  2. {
  3.     //on commence par recuperer aleatoirement une page
  4.     PhraseTiree = Math.round(Math.random() * (HazLien.length-1));
  5.     //appel de la focntion NewWindow avec une url aleatoire
  6.     NewWindow(hazLien[PhraseTiree],'ecrivain9;,
  7. '900','550','no
  8. 9;
  9. );
  10.     return;
  11. }


 
voila, bon je te previens de suite, j'ai absolument pas vérifié le code, je l'ai tapé a la volée comme ça... Donc deja, je suppose que

Code :
  1. PhraseTiree = Math.round(Math.random() * (HazLien.length-1))

donne effectivmeent un nombre valide aleatoire...
Ensuite, etant donné que le lien est tiré au hasard a chaque fois que l'on click sur le lien, tu n'as pas le probleme de rafraichir la page.
 
J'espere t'avoir aidé  :hello:

 

[jfdsdjhfuetppo]--Message édité par petoulachi--[/jfdsdjhfuetppo]

n°117223
mechkurt
Posté le 25-03-2002 à 15:48:46  profilanswer
 

comprends pas je l'ai pompé tel quel sur un bouquin de javascript:
le truc c'est que dans le bouquin le lien n'etait pas un rollover (je sais je suis chiant avec ca)
alors ca donnait ca: dans message.js
var HazMess=new Array();
var HazLien=new Array();
 
HazMess[0]= 'visitez ma page recette de cuisine';
HazMess[0]= 'cuisine.html';
 
HazMess[1]= 'venez signer mon livre d'or';
HazMess[1]= 'guestbook.html';
 
etc... puis:
 
PhraseTiree = Math.Round(Math.random() * (HazMess.length-1))
document.write('<A HREF="'+HazLien[PhraseTiree]+'">
39;+HazMess[PhraseTiree]+'</a>';);
 
 
puis dans body de la page ou l'on voulait le lien aleatoire:
<SCRIPT language="JavaScript" SRC="message.js"></SCRIPT>
 
mais moi je pensait pas a mal en enlevant  var hazMess vu que mes liens sont des rollovers "fixé" en dehors du programme ?
Suis je clair?
EDIT: merci de m'avoir aidé
re edit: j'ai commencé ce post avant ta réponse (le temps que je l'ecrive ;) )
donc rien a voir cf nouveau post + bas merci de ton attention

 

[jfdsdjhfuetppo]--Message édité par mechkurt--[/jfdsdjhfuetppo]

n°117266
petoulachi
A fortiori, brigadier chef
Posté le 25-03-2002 à 16:53:14  profilanswer
 

je pige absoiluemnt pas ce que tu dis  :??:  
 
Mais ma solution est bonne ...  :heink:

mood
Publicité
Posté le 25-03-2002 à 16:53:14  profilanswer
 

n°117284
mechkurt
Posté le 25-03-2002 à 17:14:52  profilanswer
 

Bon comme je m'y attendais (boulet comme je suis) ca morche pô !
j'ai surement mal intégré ce que tu m'as filé mais je sens qu'on avance (surtout toi parceque moi je rame pas mal c'est + compliqué que photoshop, illus et quark réuni)
En plus les rollovers ne fonctione même + :(
je récapitule (exemple simplifié):
<html>
<head>
<script language="JavaScript">
<!--
function NewWindow(mypage, myname, w, h, scroll) {
var winl = (screen.width - w) / 2;
var wint = (screen.height - h) / 2;
winprops = 'height='+h+',width='+w+&
#039;,top='+wint+',left='+winl+
',scrollbars='+scroll+',resizable
'
win = window.open(mypage, myname, winprops)
if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
}
var HazzLien=new Array();
HazLien[0]= 'menucine.htm';
HazLien[1]= 'menubook.htm';
HazLien[2]= 'menuBD.htm';
HazLien[3]= 'menutish.htm';
HazLien[4]= 'menusike.htm';
HazLien[5]= 'CVrealis.htm';
HazLien[6]= 'CVjeuvid.htm';
HazLien[7]= 'CVgraphi.htm';
HazLien[8]= 'CVgalere.htm';
HazLien[9]= 'CVecriva.htm';
function loadPage()
{
//on commence par recuperer aleatoirement une page
PhraseTiree = Math.round(Math.random() * (HazLien.length-1));
//appel de la fonction NewWindow avec une url aleatoire
NewWindow(hazLien[PhraseTiree],'ecrivain9;,
'900','550','no'
;,'9';);return;}
 
function MM_swapImgRestore() { //v3.0
var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
 
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#" )!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
 
function MM_findObj(n, d) { //v4.0
var p,i,x;  if(!d) d=document; if((p=n.indexOf("?" ))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && document.getElementById) x=document.getElementById(n); return x;
}
 
function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</script>
</head>
<body onLoad="MM_preloadImages('../image/Coin-SO.gif';)">
<a href="CVrealis.htm" target="_blank" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('realisat',
'','../image/Coin-SO.gif',
1)" onclick="loadPage();"><img name="realisat" border="0" src="../image/Coin-SO.jpg" width="200" height="300"></a>
</table>
</body>
</html>
et a propos pour cette partie (le menu) je me fout pas mal de centrer la pop-up et de lui donner 900 X 550 comme taille (mais j'ose pas trops toucher parcqu'apres window.open me crée des erreurs) a la limite je preferrerais lui donner avail.width et avail.heigth comme attribut mais faut il que je specifie :
var x= screen.availwidth ou je peut mettre screen.availwidth directement dans les parentheses.
J'ai essayé les 2 solutions (avec le type de syntax du bouquin ou avec des exemples pompé sur www.editeurjavascript.com) mais y a pas a faire j'y arrive pô
Merci de m'aider

n°117298
petoulachi
A fortiori, brigadier chef
Posté le 25-03-2002 à 17:27:35  profilanswer
 

bon attends, stop !  
 
Qd on veux resoudre un pb, on se concentre sur un seul pb a la fois. Donc ton pb pour le menu je l'ai meme pas lu.
Pour l'intant, on veut que tu es un lien qui envoie aleatoirement sur des pages differentes ...
 
Donc ça serait cool que tu me vires tout les scripts qui ne servent pas a ça (MM_swapImgRestore() ou autres fonctions générées par dreamwaever ...) ainsi que les evenements qui servent pas (onMouseOver etc etc ...).
 
Deuxiemement, tu as toujours une erreur que je t'ai signalée des le debut. La moindre des choses ça serait de lire ce que je te dis, ou au pire me dire que tu les comprends pas ...
 
bref, deja tu as :
var HazzLien=new Array();
HazLien[0]= 'menucine.htm';
...
 
Et la declaration de ta variable ne correspond pas avec ce que tu te serts ensuite (HazzLien de déclaré et tu te serts de HazLien).
 
Voila, ensuite, un bon moyen de debugger "a la main", c de mettre des alert() partout.
alert est une fonction qui ouvre une popup avec le string passé en param.
genre
alert("test" );
 
Si tu as test qui s'affiche, ça veut dire que cette partie du code est effectivement lue !
Et tu peux ainsi afficher le contenu d'une variable en faisant (par exemple pour voir le lien généré au hasard)
alert(hazLien[PhraseTiree]);
juste avant l'appel que tu fais a NewWindow, dans la fonction loadPage.
 
Voila, et là il est 17h30, 35h rulez je me casse.
A demain  :hello:

n°117302
mechkurt
Posté le 25-03-2002 à 17:35:56  profilanswer
 

thank you very much et a demain (sans faute ;) )
version expurgé 3.1:
<html>  
<head>  
<script language="JavaScript">  
<!--  
function NewWindow(mypage, myname, w, h, scroll) {  
var winl = (screen.width - w) / 2;  
var wint = (screen.height - h) / 2;  
winprops = 'height='+h+',width='+w+&

 

#039;,top='+wint+',left='+winl+

 

',scrollbars='+scroll+',resizabl
e
'  
win = window.open(mypage, myname, winprops)  
if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }  
}  
var HazLien=new Array();  
HazLien[0]= 'menucine.htm';  
HazLien[1]= 'menubook.htm';  
HazLien[2]= 'menuBD.htm';  
HazLien[3]= 'menutish.htm';  
HazLien[4]= 'menusike.htm';  
HazLien[5]= 'CVrealis.htm';  
HazLien[6]= 'CVjeuvid.htm';  
HazLien[7]= 'CVgraphi.htm';  
HazLien[8]= 'CVgalere.htm';  
HazLien[9]= 'CVecriva.htm';  
function loadPage()  
{  
//on commence par recuperer aleatoirement une page  
PhraseTiree = Math.round(Math.random() * (HazLien.length-1));  
//appel de la fonction NewWindow avec une url aleatoire  
NewWindow(hazLien[PhraseTiree],'ecrivain9;,

 

'900','550','no
9;
;,'9';);return;}  
//-->  
</script>  
</head>  
<body >  
<a href="CVrealis.htm" target="_blank" onclick="loadPage();"><img name="realisat" border="0" src="../image/Coin-SO.jpg" width="200" height="300"></a>  
</body>  
</html>

n°117463
petoulachi
A fortiori, brigadier chef
Posté le 25-03-2002 à 23:43:52  profilanswer
 

bon je jete un ptit coup d'oeil.
Deja, l'appel a ta fonction NewWindow apparait tout pourri sur le forum. tu pourrai me donner la version exacte ?
 
Sinon pour la balise a, je dirai que seulement ça suffit :
<a onClick="loadpage();">ton image</a>
ou a la limite avec href="" .

n°117548
mechkurt
Posté le 26-03-2002 à 10:12:08  profilanswer
 

function NewWindow(mypage, myname, w, h, scroll) {
var winl = (screen.width - w) / 2;
var wint = (screen.height - h) / 2;
winprops = 'height='+h+',width='+w&#

 


039;,top='+wint+',
left='+winl',scrollbars='+scroll
 
 
+',resizable'
win = window.open(mypage, myname, winprops)
if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
}
mais je voudrais la simplifier comme ça:
function NewWindow(mypage, myname, scroll) {
var winl = 0;
var wint = 0;
var w = screen.availwidth;
var h = screen.availheight;
winprops = 'height='+h+',width='+w&#

 


039;;,top='+wint+',
left='+winl+',scrollbars='+scrol
 
 
l+',resizable'
win = window.open(mypage, myname, winprops)
if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
}
ca devrait marcher mais...
non !?
 
EDIT: excuse pour les & # 0 3 9  c'est des ' mais je comprend pas il veut pas les prendres (des fois)

 

[jfdsdjhfuetppo]--Message édité par mechkurt--[/jfdsdjhfuetppo]

n°117559
petoulachi
A fortiori, brigadier chef
Posté le 26-03-2002 à 10:24:50  profilanswer
 

est ce que ta focntion NewWindow fonctionne si tu ne touche a rien ?

n°117561
mechkurt
Posté le 26-03-2002 à 10:31:58  profilanswer
 

<html>  
<head>  
<script language="JavaScript">  
<!--  
function NewWindow(mypage, myname, w, h, scroll) {  
var winl = (screen.width - w) / 2;  
var wint = (screen.height - h) / 2;  
winprops = 'height='+h+',width='+w+&
#039;,top='+wint+',left='+winl+
',scrollbars='+scroll+',resizable
'  
win = window.open(mypage, myname, winprops)  
if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }  
}  
var HazLien=new Array();  
HazLien[0]= 'menucine.htm';  
HazLien[1]= 'menubook.htm';  
HazLien[2]= 'menuBD.htm';  
HazLien[3]= 'menutish.htm';  
HazLien[4]= 'menusike.htm';  
HazLien[5]= 'CVrealis.htm';  
HazLien[6]= 'CVjeuvid.htm';  
HazLien[7]= 'CVgraphi.htm';  
HazLien[8]= 'CVgalere.htm';  
HazLien[9]= 'CVecriva.htm';  
function loadPage()  
{  
//on commence par recuperer aleatoirement une page  
PhraseTiree = Math.round(Math.random() * (HazLien.length-1));  
//appel de la fonction NewWindow avec une url aleatoire  
NewWindow(hazLien[PhraseTiree],'ecrivain9;,
'900','550','no'
;,'9';);return;}  
//-->  
</script>  
</head>  
<body >  
<a href="" onclick="loadPage();"><img name="realisat" border="0" src="../image/Coin-SO.jpg" width="200" height="300"></a>  
</body>  
</html>
avec ca quand je clicke la page se ferme (sans aucun messge d'erreur) pourtant on peut pas faire version + expurgé

n°117567
mechkurt
Posté le 26-03-2002 à 10:34:55  profilanswer
 

Rectificatif:
en fait ca me la ferme pas, ca m'affiche le repertoire dans lequel se trouve le fichier html que je test
(ici: D:\sacdenoeudcouleur\html)
j'aurais jamais cru explorateur windows aussi lié a internet explorer ;)

n°117626
petoulachi
A fortiori, brigadier chef
Posté le 26-03-2002 à 11:51:16  profilanswer
 

mechkurt a écrit a écrit :

Rectificatif:
en fait ca me la ferme pas, ca m'affiche le repertoire dans lequel se trouve le fichier html que je test
(ici: D:\sacdenoeudcouleur\html)
j'aurais jamais cru explorateur windows aussi lié a internet explorer ;)  




ça c cause du href="". Essaie de mettre href="#", ou alors vire carrement href.
 
Mais bon, dans tout les cas il aurait noprmalement du ouvrir une autre fenetre.
Rajoute la ligne :
alert("Robert" );
juste apres :
function loadPage(){
alert("Robert" );
....

n°117665
mechkurt
Posté le 26-03-2002 à 14:40:07  profilanswer
 

Si je met  alert("Robert" ); au debut (cad avant la fonction open window) au milieu (cad entre le tableau et la fonction loadpage) ou même a l'endoit ou tu me l'as dit, rien ne se passe.
ca c'est la mauvaise nouvelle...
 
 
 
et...
 
 
y a pas de bonne nouvelle

n°117683
mechkurt
Posté le 26-03-2002 à 15:07:40  profilanswer
 

alors si j'enleve href="" c'est plus un lien je peut plus cliquez
si je met href="#" il m'envoi sur: D:\sacdenoeudcouleur\html\test.htm# (il affiche tjs la meme page mais le "chemin" change)
si je met href=" " (c'est con mais je suis desespere) il recommence a m'envoyer sur le repertoir
sinon les alert comprend pas (ca doit marcher, j'ai verifie dans le bouquin)
même ca ca ne marche pas:
<html>  
<head>  
<script language="JavaScript">  
<!--  alert("ca doit marcher" );
//-->  
</script>  
</head>  
<body >  
<p>bordel pourquoi ne se passe t'il rien</p>  
</body>  
</html>

n°117712
mechkurt
Posté le 26-03-2002 à 15:45:26  profilanswer
 

bon OK j'ai capté pourquoi l'alerte marchait pas dans le petit prog (fallait sauter a la ligne parcqu'il croyait q'alert c'etait un commentaire) mais le "gros" je vois pas (mais je cherche).
Help please
PS: qu'est ce que je fait pour le a href = ?

 

[jfdsdjhfuetppo]--Message édité par mechkurt--[/jfdsdjhfuetppo]

n°117775
petoulachi
A fortiori, brigadier chef
Posté le 26-03-2002 à 16:57:17  profilanswer
 

desole de pas etre dispo, mais bon je te rappel que je suis au travail ;)
 
Pour le Href, bin avec # ça m'a l'air pas mal non ? a pres tout, on s'en fout un peu que le chemin d'acces change ...
 
Pour le alert, j'avoue que je ne comprend pas  :??:  
met tout le code de ta page sur le forum, mais pour ça, sert toi des balises [   code] et [   /code], sans les espaces dans les crochets.

 

[jfdsdjhfuetppo]--Message édité par petoulachi--[/jfdsdjhfuetppo]

n°118181
mechkurt
Posté le 27-03-2002 à 14:47:15  profilanswer
 

Code :
  1. <html> 
  2. <head> 
  3. <script language="JavaScript"> 
  4. <!--
  5. function NewWindow(mypage, myname, scroll) {
  6. var winl = 0;
  7. var wint = 0;
  8. var w = screen.availwidth;
  9. var h = screen.availheight;
  10. winprops = 'height='+h+',width='+w&#
  11. 039;,top='+wint+',
  12. left='+winl+',scrollbars='+scrol
  13. l+',resizable'
  14. win = window.open(mypage, myname, winprops)
  15. if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
  16. }
  17. var HazLien=new Array(); 
  18. HazLien[0]= 'menucine.htm'; 
  19. HazLien[1]= 'menubook.htm'; 
  20. HazLien[2]= 'menuBD.htm';
  21. HazLien[3]= 'menutish.htm'; 
  22. HazLien[4]= 'menusike.htm'; 
  23. HazLien[5]= 'CVrealis.htm'; 
  24. HazLien[6]= 'CVjeuvid.htm'; 
  25. HazLien[7]= 'CVgraphi.htm'; 
  26. HazLien[8]= 'CVgalere.htm'; 
  27. HazLien[9]= 'CVecriva.htm'; 
  28. function loadPage() 
  29. alert("Robert" );
  30. //on commence par recuperer aleatoirement une page   
  31. PhraseTiree = Math.round(Math.random() * (HazLien.length-1)); 
  32. //appel de la fonction NewWindow avec une url aleatoire   
  33. NewWindow(hazLien[PhraseTiree],'ecrivain9;,
  34. '900','550','no
  35. 9;
  36. ;,'9';);return;} 
  37. //-->   
  38. </script> 
  39. </head> 
  40. <body > 
  41. <a href="#" onclick="loadPage();"><img name="realisat" border="0" src="../image/Coin-SO.jpg" width="200" height="300"></a> 
  42. </body> 
  43. </html>


voila, de toute facon je vais mettre mon site en ligne sans ca, car je suis un peu a la bourre, et si j'arrive a faire marcher ce @#!"'#&@ de script je l'ajouterais (puis comme ca tu pourras aller voir ce que je veux faire et se serat plus clair).
merci de ton aide et t'inquiete pas le site tournerat avec ou sans de toute facon (mais ca m'enerve!!!!!)
A+
EDIT: excuse encore pour le ' qui se transforme en 0 3 9 ; (tiens c'est bizarre il met plus le &) et le scroll qui saute a la ligne, impossible a changer ca ...

 

[jfdsdjhfuetppo]--Message édité par mechkurt--[/jfdsdjhfuetppo]

n°118189
petoulachi
A fortiori, brigadier chef
Posté le 27-03-2002 à 14:59:14  profilanswer
 

bon. Deja, je pense a un truc (et je suis vraiment tres con de pas y avoir pensé avant ...)
Pour la balise <a> tu peux faire simplement :
<a href="javascript:loadPage()"></a>
 
 
deja pour ça c reglé.
 
Ensuite, essaie de faire un alert( PhraseTiree) voir si il ya bien un num généré aleatoirement, compris dans les bornes de ton tableau....

n°118229
mechkurt
Posté le 27-03-2002 à 15:46:06  profilanswer
 

OK j'essaie ca sur mon test.htm
sinon mon site tout pourri :( est en ligne http://www.sacdenoeuds.levillage.org
TT mes rollovers marche bien (menuBD et menucine par exemple le point vert en haut et le point bleu a gauche) mais ceux du menu tourne jusqu'a ce que la page soit entierement loadé (ce qui prend bcps trops de temps d'ailleurs) puis s'arrete (je vais me tirer une balle (en local sa mache tres bien :( ).
A part ca c'est sur cette page (qui merde deja pas mal) que je veux faire des liens aleatoires.
C'est plus clair ?
;)

n°118236
petoulachi
A fortiori, brigadier chef
Posté le 27-03-2002 à 15:53:52  profilanswer
 

mechkurt a écrit a écrit :

OK j'essaie ca sur mon test.htm
sinon mon site tout pourri :( est en ligne http://www.sacdenoeuds.levillage.org
TT mes rollovers marche bien (menuBD et menucine par exemple le point vert en haut et le point bleu a gauche) mais ceux du menu tourne jusqu'a ce que la page soit entierement loadé (ce qui prend bcps trops de temps d'ailleurs) puis s'arrete (je vais me tirer une balle (en local sa mache tres bien :( ).
A part ca c'est sur cette page (qui merde deja pas mal) que je veux faire des liens aleatoires.
C'est plus clair ?
;)  




Heu deja, juste une petite remarque, mais les images en bmp c bcp trop volumineux. Pense a les mettre en jpg.
 
Sinon, je v paraitre con ; mais c quoi pour toi rollover ?
 
et tu m'as pas dit pour le coup de l'alert du random ...
 
allez, on va  y arriver  :hello:

n°118237
mechkurt
Posté le 27-03-2002 à 15:54:23  profilanswer
 

euh en fait le PB c'est que je n'ai pas d'alert qui s'affiche au chargement de la page, alors de la a connaitre le phrasetiree...
Par contre le PB du a href semble etre regle, c'est tout a fait ce qu'il fallait apparament !
Merci petoulachi mais personne d'autres n'est pret a m'aider, il bosse lui...

n°118244
mechkurt
Posté le 27-03-2002 à 16:00:37  profilanswer
 

attend ou c'est que t'as vu un BMP c'est pas possible que j'ai laissé passer ca...
ben un rollover c'est pas de souris = une image
tu passe avec la souris = une autre image
(eventuellement tu clique un lien)
a le truc c'est que moi je mets souvent des gifs animé en image de onmouseon ce qui fait que "ca s'anime"
d'ailleur mes image s'appelle toto.jpg pour la onmouseover et toto.gif pour la onmouseon
OKI ?
EDIT: faut que j'aille d'urgence imprimer des T-Shirts en serigraphie (merci et probablement a demain ;) )

 

[jfdsdjhfuetppo]--Message édité par mechkurt--[/jfdsdjhfuetppo]

n°118251
petoulachi
A fortiori, brigadier chef
Posté le 27-03-2002 à 16:13:22  profilanswer
 

mechkurt a écrit a écrit :

attend ou c'est que t'as vu un BMP c'est pas possible que j'ai laissé passer ca...
ben un rollover c'est pas de souris = une image
tu passe avec la souris = une autre image
(eventuellement tu clique un lien)
a le truc c'est que moi je mets souvent des gifs animé en image de onmouseon ce qui fait que "ca s'anime"
d'ailleur mes image s'appelle toto.jpg pour la onmouseover et toto.gif pour la onmouseon
OKI ?  




bin pour les bmp, la 1ere page de ton, avec le visage. C des bmp.
 
Bon pour le rollover, tu as le la chance car je l'ai deja fait pour un site, et du coup je l'ai fait pour que ça marche avec IE, NS et opera.
voila le code : (pas retravaillé car j'ai aps le tps.... j'espere que tu t'y retrouvera)

Code :
  1. function changeImage(image)
  2. {
  3. if (navigator.appName == "Microsoft Internet Explorer" )
  4.  document.all.image.src=image;
  5.     else
  6.     document.image.src=image";
  7. return;
  8. }


 
Qqu petites remarques :
En gros, tu as une balise image qui contient l'image de départ :
<img src="truc.jpg">
tu lui rajoute un nom pour l'identifier :
<img src="truc.jpg" name="image">
 
et pour y acceder, tu fais : document.image
 
 
ensuite, il te suffit de faire ça pour les liens :
<a href="#" onMouseOver="javascript:changeImage("toto.jpg" )>
 
et là il suffit de passer sur le lien pour que l'image change.

n°118523
mechkurt
Posté le 28-03-2002 à 09:36:46  profilanswer
 

nan nan c'est pas des BMP, c'est des JPG (le plus gros fait 8K) pour les rollovers j'utilise ceux de dreamweaver (fonction preload des gifs) et ca marche partout ailleur sur le site. Y a juste sur la 2eme page qu'ils freeze apres le chargement (je me demande bien pourquoi en local sur mon poste il ne s'arrete pas comme ca sans raison apparente)

n°118559
mechkurt
Posté le 28-03-2002 à 10:12:58  profilanswer
 

Sur editeurjavascript.com/forum un gars me la corrigé comme ca et ca marche deja mieux :

Code :
  1. <html>
  2. <head>
  3. <script language="JavaScript">
  4. <!--
  5. function NewWindow(mypage, myname, w, h, scroll) {
  6. var winl = (screen.width - w) / 2;
  7. var wint = (screen.height - h) / 2; alert(mypage)
  8. winprops = 'height='+h+',width='+w+&
  9. #039;,top='+wint+',left='+winl+
  10. ',scrollbars='+scroll+',resizable
  11. '
  12. win = window.open(mypage, myname, winprops)
  13. if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
  14. }
  15. var HazLien=new Array();
  16. HazLien[0]= 'menucine.htm';
  17. HazLien[1]= 'menubook.htm';
  18. HazLien[2]= 'menuBD.htm';
  19. HazLien[3]= 'menutish.htm';
  20. HazLien[4]= 'menusike.htm';
  21. HazLien[5]= 'CVrealis.htm';
  22. HazLien[6]= 'CVjeuvid.htm';
  23. HazLien[7]= 'CVgraphi.htm';
  24. HazLien[8]= 'CVgalere.htm';
  25. HazLien[9]= 'CVecriva.htm';
  26. function loadPage()
  27. {
  28. //on commence par recuperer aleatoirement une page  
  29. PhraseTiree = Math.floor(Math.random() * HazLien.length);
  30. //appel de la fonction NewWindow avec une url aleatoire  
  31. NewWindow(HazLien[PhraseTiree],'ecrivain9&#
  32. 039;,'900','550','no
  33. ','9');
  34. return;
  35. }
  36. //-->  
  37. </script>
  38. </head>
  39. <body >
  40. <a href="javascript:loadPage();"><img name="realisat" border="0" src="../image/Coin-SO.jpg" width="200" height="300"></a>
  41. </body>
  42. </html>


j'ai pas tout suivi mais deja mathround, c'etait mathfloor
doit-je en deduire que ce n'est pas la peine de copier un code auquel on ne comprend rien (ou si peut ...)


---------------
D3
n°118593
mechkurt
Posté le 28-03-2002 à 11:09:14  profilanswer
 

Ca Marche !!!!!!
<Christophe Lambert>je sais il est tout pourri mon site</Christophe Lambert>
Mais bon Rome ne s'est pas fait en un jour ;)
merci petoulachi pour ton aide

 

[jfdsdjhfuetppo]--Message édité par mechkurt--[/jfdsdjhfuetppo]

n°118644
petoulachi
A fortiori, brigadier chef
Posté le 28-03-2002 à 12:21:59  profilanswer
 

mechkurt a écrit a écrit :

Ca Marche !!!!!!
<Christophe Lambert>je sais il est tout pourri mon site</Christophe Lambert>
Mais bon Rome ne s'est pas fait en un jour ;)
merci petoulachi pour ton aide  
 
 




hooo j'arrive plus tard ce matin et je m'aperçois que tu t'en es enfin sorti !!!
 
bravo  :hello:

n°118747
mechkurt
Posté le 28-03-2002 à 16:51:41  profilanswer
 

j'y serais pas arrivé tout seul, encore merci
et merci a http://www.editeurjavascript.com/forum
y'a encore un petit PB avec mes gifs animé qui s'arrete apres le chargement de la page sur mac (ie5) mais seulement sur la page du noeud (comprend pas ca le fait pas en local) mais bon...
allez a bientot pour mes nouveaux PB ;)

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [javascript] liens aléatoires et rollovers CA MARCHE !!

 

Sujets relatifs
[javascript] excecuter un script dans un script?[javascript]
[Javascript] demande de confirmation avec window.close(), pourkoi ??[OPERA] mon site ne marche pas du tout avec opera (pb de JavaScript)
[hmtl] Une page qui marche ds l'editeur et mais pas sur le net ?????[Javascript] Erreur de syntaxe...
[Javascript] Comment demarrer avec une page en popup[Javascript] Récupérer la position d'une image
Javascript fermeture de fenêtre... 
Plus de sujets relatifs à : [javascript] liens aléatoires et rollovers CA MARCHE !!


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR