(diaporama) Cherche code pour rediriger vers page html lors du clique sur photos

[Résolu]
Signaler
Messages postés
9
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
22 avril 2009
-
Messages postés
1375
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011
-
Bonjours, j'utilise flash cs3 et je veux faire un petit diaporama, jusque la tout va bien mon diaporama est fait cependant jai un petit soucie, je souhaiterais que lorsque je clique sur une des photos, quelle s'agrandisse (quitte a ce que sa soit rediriger vers une page html avec la photos taille normale) et je ne trouve pas le code.
voici le code principale de ma page :

largeur = 135;
hauteur = 170;
espace = 25;
nbr = 13;
 
largeurTotale = nbr*(largeur + espace) + espace;
 
this.createEmptyMovieClip("diaporama", 0);
diaporama._y = 10;
 
for(var i = 1; i < nbr; i++) {
 
var mc = diaporama.createEmptyMovieClip("photo"+i, i);
mc._x = espace + (largeur + espace)*i;
mc.createEmptyMovieClip("conteneur", 0);
mc.conteneur.loadMovie("photos/" + i + ".png");
mc.createEmptyMovieClip("cadre", 1);
 
with(mc.cadre) {
lineStyle(1, "0x000000", 100);
moveTo(0, 0);
lineTo(largeur, 0);
lineTo(largeur, hauteur);
lineTo(0, hauteur);
lineTo(0, 0);
}
 
mc.nombre = i;
 
mc.onRollOver = function() {
commentaires.text = "Photo n°" + this.nombre + " : " + infos[this.nombre];
}
 
mc.onRollOut = function() {
commentaires.text = "";
}

onMouseMove = function() {
diaporama._x = (600 - largeurTotale)/600*_xmouse;

je ne sais pas vraiment ce que il faut mettre, ni ou le mettre
}
Merci Bien

17 réponses

Messages postés
1375
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011

Hello,

par exemple:

mc.onRelease= function() {
 getURL("photo"+i+".jpg", "_blank");
}

-- Orange73 --
"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
Messages postés
1375
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011

met le code juste apres :

mc.onRollOut = function() {
commentaires.text = "";
}

et pour lire une autre sequence :

gotoAndPlay("nom_sequence",1);

-- Orange73 --
"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
Messages postés
1375
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011

Tes fonctions souris son en dehors de ta boucle for, c'est donc normal.

Voici le code corrigé (normalement :) ) :

for(var i = 1; i < nbr; i++) {
 
var mc = diaporama.createEmptyMovieClip("photo"+i, i);
mc._x = espace + (largeur + espace)*i;
mc.createEmptyMovieClip("conteneur", 0);
mc.conteneur.loadMovie("photos/" + i + ".png");
mc.createEmptyMovieClip("cadre", 1);

with(mc.cadre) {

lineStyle(1, "0x000000", 100);

moveTo(0, 0);

lineTo(largeur, 0);

lineTo(largeur, hauteur);

lineTo(0, hauteur);

lineTo(0, 0);

}

 

mc.nombre = i;

 

mc.onRollOver = function() {

commentaires.text = "Photo n°" + this.nombre + " : " + infos[this.nombre];

}

 

mc.onRollOut = function() {

commentaires.text = "";

}

mc.onRelease= function() {

 getURL(i +".html", "_blank");

}


onMouseMove = function() {

diaporama._x = (600 - largeurTotale)/600*_xmouse;

}

}

-- Orange73 --
"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
Messages postés
1375
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011

Normal car tu perd la variable "i" dans la fonction
onRelease, voici comment faire :




for(var i = 1; i < nbr; i++) {
 
var mc = diaporama.createEmptyMovieClip("photo"+i, i);
mc._x = espace + (largeur + espace)*i;
mc.id = i;
mc.createEmptyMovieClip("conteneur", 0);
mc.conteneur.loadMovie("photos/" + i + ".png");
mc.createEmptyMovieClip("cadre", 1);

with(mc.cadre) {
lineStyle(1, "0x000000", 100);
moveTo(0, 0);
lineTo(largeur, 0);
lineTo(largeur, hauteur);
lineTo(0, hauteur);
lineTo(0, 0);
}
 
mc.nombre = i;
 
mc.onRollOver = function() {
commentaires.text = "Photo n°" + this.nombre + " : " + infos[this.nombre];
}
 
mc.onRollOut = function() {
commentaires.text = "";
}
mc.onRelease= function() {
 getURL(this.id+".html", "_blank");
}

onMouseMove = function() {
diaporama._x = (600 - largeurTotale)/600*_xmouse;
}

}






-- Orange73 --



"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
Messages postés
1375
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011

Correction :

mc.onRelease= function() {
  container.loadMovie(this.id+".jpg");
}

-- Orange73 --
"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
Messages postés
9
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
22 avril 2009

Merci juste un petit problème c'est que cela me met le lien uniquement sur la dernière image comment puis-je y résoudre ?

Une deuxième question est-ce possible lors du clique de faire lire une autre séquence flash (créer préalablement)
Merci
Messages postés
9
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
22 avril 2009

Merci pour le lien séquence, je ne l'ai pas encore essayer
en ce qui concerne le get url cela ne marche toujours pas même placé juste en dessous cela me trace toujours un réctangle sur la dernière photos (la 13éme qui m'envoie bien sur la page 13.html ou ce trouve ma 13ème image)
y a t-il un problème ?

Voici mon code maintenent:

largeur = 135;
hauteur = 170;
espace = 25;
nbr = 13;
 
largeurTotale = nbr*(largeur + espace) + espace;
 
this.createEmptyMovieClip("diaporama", 0);
diaporama._y = 10;
 
for(var i = 1; i < nbr; i++) {
 
var mc = diaporama.createEmptyMovieClip("photo"+i, i);
mc._x = espace + (largeur + espace)*i;
mc.createEmptyMovieClip("conteneur", 0);
mc.conteneur.loadMovie("photos/" + i + ".png");
mc.createEmptyMovieClip("cadre", 1);
}
with(mc.cadre) {
lineStyle(1, "0x000000", 100);
moveTo(0, 0);
lineTo(largeur, 0);
lineTo(largeur, hauteur);
lineTo(0, hauteur);
lineTo(0, 0);
}
 
mc.nombre = i;
 
mc.onRollOver = function() {
commentaires.text = "Photo n°" + this.nombre + " : " + infos[this.nombre];
}
 
mc.onRollOut = function() {
commentaires.text = "";
}
mc.onRelease= function() {
 getURL(i +".html", "_blank");
}

onMouseMove = function() {
diaporama._x = (600 - largeurTotale)/600*_xmouse;
}
Messages postés
9
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
22 avril 2009

(et uniquement sur la 13ème)
Messages postés
9
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
22 avril 2009

merci beaucoup cela marche,les image s'affiche ou il faut mais au niveau du lien il y a un petit problème le lien me r'envoi toujours vers 13.html (lien de la dernière image décidément :p
Messages postés
9
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
22 avril 2009

Merci beaucoup cela marche parfaitement.

est-ce possible maintenent que lors ce que je passe sur une image miniature (image de base) l'image taille réel safiche dans un cadre en dessous du diaporama?
Merci :) aprés cela je pense que j'en aurais finit avec toutes mes question :)
Messages postés
1375
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011

Oui tu a juste a créé un clip vide en dessous de ton diapo et a le nommer par exemple "container". Puis tu fais un loadMovie(); de ton image a l'interieur de celui ci :

mc.onRelease= function() {
  container.loadMovie(this.id+".html");
}

-- Orange73 --
"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
Messages postés
9
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
22 avril 2009

Alors que je récapitule je crée un nouveau clip via nouveau symbole je le met ou je veux que mon image s'afiche, je met le nom d'occurence container et sur l'action de ce clip (clique droit action sur le movie clip )je met :

mc.onRelease= function() {
  container.loadMovie(this.id+".jpg");
}
Messages postés
1375
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011

L'action tu la mets dans ta boucle for qu'on a corrigé auparavant. Tu remplaces celle existante.

-- Orange73 --
"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
Messages postés
9
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
22 avril 2009

daccord donc voila ce que cela donne :

mc.onRollOut = function() {
commentaires.text = "";
}
mc.onRelease= function() {
  container.loadMovie("Photos1/" + this.id + ".jpg");

}
onMouseMove = function() {
diaporama._x = (900 - largeurTotale)/900*_xmouse;
}

lors du clique sur la photos 1 le message d'erreur suivant s'affiche :
Erreur d'ouverture de l'URL 'file:///C|/********/**********/Photos1/undefined.jpg'
Messages postés
1375
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011

Tu as bien cela ?

for(var i = 1; i < nbr; i++) {
 
var mc = diaporama.createEmptyMovieClip("photo"+i, i);
mc._x = espace + (largeur + espace)*i;
mc.id = i;
mc.createEmptyMovieClip("conteneur", 0);
mc.conteneur.loadMovie("photos/" + i + ".png");
mc.createEmptyMovieClip("cadre", 1);

with(mc.cadre) {
lineStyle(1, "0x000000", 100);
moveTo(0, 0);
lineTo(largeur, 0);
lineTo(largeur, hauteur);
lineTo(0, hauteur);
lineTo(0, 0);
}
 
mc.nombre = i;
 
mc.onRollOver = function() {
commentaires.text = "Photo n°" + this.nombre + " : " + infos[this.nombre];
}
 
mc.onRollOut = function() {
commentaires.text = "";
}
mc.onRelease= function() {
  container.loadMovie("Photos1/" + this.id + ".jpg");
}

onMouseMove = function() {
diaporama._x = (600 - largeurTotale)/600*_xmouse;
}

}

-- Orange73 --
"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
Messages postés
9
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
22 avril 2009

c'est bon c'est résolu :D merci beaucoup pour ta patience c'est très gentils sa ma bien fait comprendre une petite partie de comment marche l'action script Merci
Messages postés
1375
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011

De rien :-)

-- Orange73 --
"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)