Effet de rotation d'iamge avec script, et lien sur image [Résolu]

cs_RomantikA 22 Messages postés lundi 25 février 2008Date d'inscription 31 mars 2012 Dernière intervention - 20 févr. 2009 à 00:14 - Dernière réponse : cs_RomantikA 22 Messages postés lundi 25 février 2008Date d'inscription 31 mars 2012 Dernière intervention
- 20 févr. 2009 à 18:20
Bonjour,
je ne sais pas trop si c'est le bon endroit pour expoqer mon problème, mais il s'agit d'un code javascript, donc j'ai tenté le tout pour le tout...

J'ai donc un code javascript qui fait tourner des images en rond par rapport à un axe verticale. En positionnant le curseur sur une image, j'ai un aperçu agrandi qui s'affiche au centre du cercle d'image... Et mon problème est que je n'arrive pas à poser des liens sur les images. Je voudrais en effet, que l'orsque l'on clique sur une des images, on soit dirigé vers le lien respectif. Or j'arrive pas à configurer le script pour accepter ces liens. j'ai regarder sur google... j'ai chercher des sortes de slideshow et ce genre de truk, certain son bien, mais bon... je ne trouve pas trop "chaussure à mon pied". J'ai également essayer de trouver comment inssérer des liens, mais je n'ai rien trouver...
Alors si quelqu'un plus doué que moi pouvait m'aider, ce serait très simpatique de sa part car je désespère là :/

voici mon code:

__________________________________
</head>

<script language=javascript>
<!--
var angle=0,ll,hh,bcl,vit=0.025;       // vitesse d'origine: "vit=0.05
//taille des vignettes (taille d'origine: 40)
var taille=100
//largeur de tout le manège (largeur d'origine: 250)
var largeur=200
//hauteur de tout le manège (hauteur 'origine: 100)
var hauteur=15


//Le nombre d'images (de vignettes)
nbrimg=6

//images du manège
var pict=[
 "Images/Quizz/Pres_Quiz_Astronomie.png",
 "Images/Quizz/Pres_Quiz_Cine-TV.png",
 "Images/Quizz/Pres_Quiz_General.png",
 "Images/Quizz/Pres_Quiz_Musique.png",
 "Images/Quizz/Pres_Quiz_Sport.png",
 "Images/Quizz/Pres_Quiz_karaoke.png"]

function window_onload(){
for(i=1;i<=nbrimg;i++){
document.body.innerHTML+=""


}
return move()
}
function move(){
ll=document.body.clientWidth/2
hh=document.body.clientHeight/2
document.getElementById("viewer").style.top=hh-150     // hauteur de l'image centrale (plus le nombre est grand, plus l'image est haute) (valeur d'orgine: 150)
document.getElementById("viewer").style.left=ll-147,5     // position verticale, (alignement de la droite de l'image "VIEWER"
angle=angle-vit
for(i=1;i<=nbrimg;i++){
document.getElementById("i"+i).style.left=ll+largeur*(Math.cos(angle+i*2*Math.PI/nbrimg))
document.getElementById("i"+i).style.top=hh+hauteur*(Math.sin(angle+i*2*Math.PI/nbrimg))+document.getElementById("i"+i).width/2
agl=angle+i*2*Math.PI/nbrimg
document.getElementById("i"+i).width=20*(Math.sin(agl))+taille
document.getElementById("i"+i).style.zIndex=50*(Math.sin(agl))+100
document.getElementById("i"+i).style.opacity=(Math.sin(agl)+1)*0.50
document.getElementById("i"+i).style.filter="alpha(opacity="+(Math.sin(agl)+1)*50+")"
}
setTimeout("move()",1)}
//-->
</script>
<center></center>



</html>
__________________________________

En vosu remerciant par avance poru votre aide.

P.S.: désolé si mon code est posé "à l'arache", je n'ai pas trouvé d'option pour l'afficher autrement .

P.S.bis: j'accèpte aussi si vous avez d'autres suggestion de script dans le même genre (ou codé plus simplement), sachant que je désire tout de même conserver l'effet de rotation.

Merci à vous pour votre attention, Romantika
Afficher la suite 

Votre réponse

10 réponses

Meilleure réponse
@karamel 1660 Messages postés vendredi 9 mai 2008Date d'inscription 12 août 2018 Dernière intervention - 20 févr. 2009 à 09:55
3
Merci
bonjour
d'abord tu crée une variable comme pour les images qui contient les liens

var lien=["lien1.html","lien2.html",....etc]

ensuite tu rajoute la balise [+lien[i-1]+ "]

Merci @karamel 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 74 internautes ce mois-ci

Commenter la réponse de @karamel
cs_RomantikA 22 Messages postés lundi 25 février 2008Date d'inscription 31 mars 2012 Dernière intervention - 20 févr. 2009 à 11:53
0
Merci
Je te remercie beaucoup kazma. Ca fonctionne du tonnerre de dieu (comme on di ^^) tu m'enlève une grosse épine du pied car je commencé à craqur là. mais en fait il faut avouer, comme dans pratiquement tout les cas, que c'était pas plus compliqué... enfin quoi qu'il en soit, vu le niveau d'agacement que je commencé à avori là, je n'aurais pas pu trouver tout seul. Donc voila, même si sur ma page ya visiblement quelque erreur dont je ne connais pas la cause, même si j'ai du mal à régler la vitesse de rotation pour le onmouseover qui n'a pas l'air de fonctionner.... je te remercie sincèrement pour ton aide précieuse.

Pour Kazma hip hip hip??!!!!!! OURA !! ^^ merci beaucoup, bonne continuation à toi et bonne journée. Tu mérite le galon de helpeur ^^

Romantika
Commenter la réponse de cs_RomantikA
@karamel 1660 Messages postés vendredi 9 mai 2008Date d'inscription 12 août 2018 Dernière intervention - 20 févr. 2009 à 12:08
0
Merci
++
Commenter la réponse de @karamel
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 20 févr. 2009 à 12:27
0
Merci
pas mieux que kazma...

>>même si sur ma page ya visiblement quelque erreur dont je ne connais pas la cause
_ ((((onmouseover="vit=0"))))    pourquoi les (((( et )))) ?
_ pourquoi ((((onmouseout="vit=0.01"))))  et onmouseout=rafrech
 ( et c'est quoi rafresh ? )
_ manque de " ou de ' !!!!
"Bul
Commenter la réponse de Bul3
cs_RomantikA 22 Messages postés lundi 25 février 2008Date d'inscription 31 mars 2012 Dernière intervention - 20 févr. 2009 à 14:41
0
Merci
bonjour Bul3,
tout d'abord merci de ton attention.
pour répondre, les ((( ))) paraissent inutile, mais pourtant si yen a pas... ça change tout visiblement. certe la vitesse de rotation est "respecté" mais le wiever ne fonctionne pas. Et pour etre franc, à force de voir du code de partout, je sature un peu... je vois même plus les fautes :s
Et logiquement le onmouseout et le onmouseover servent justement (logiquement) à programmer la vitesse de rotation. et logiquement le rafresh sert à rafraichir la page... enfin c'est ce qu'on m'a dit... donc bon. je ne dis pa que le code est juste, loin de là, surtou que c'est des bouts de code d'un peut tout les niveaux. du copié, de l'improvisé, du test.... donc forcément, ça doit rater en quelque part. mais vu que je ne suis pas non plus un habitué du JS... là je bloque.

Romantika
Commenter la réponse de cs_RomantikA
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 20 févr. 2009 à 15:07
0
Merci
>>((( ))) paraissent inutile, mais pourtant si yen a pas... ça change tout visiblement.
ce n'est même pas une syntaxe valide en html !
si on enlève, mais je ne comprend même pas pourquoi ça fonctionne,  c'est pareil,
vu de l'extérieur et si on teste avec ce que tu donnes
>>rafresh
ça n'existe pas an javascript

de toutes manières faire :

   
il faut aussi rectifier les erreurs html !

Navigateurs |Quelques Explications |----
Chrome
, contrôler page actuelle / Options pour développeurs
/ Console Javascript, ----
FireFox
, Outils / Console d'erreurs
et mieux : télécharger FireBug, ----
Internet
Explorer
, activer le deboggage : Outils/options Internet/Avancés
dans la liste, sous "Navigation" : décocher
o Afficher une notification de chaque erreur de script
o Désactiver le débogage de Scripts (Internet Explorer)
et mieux : télécharger le Debogger IE
voir aussi : DebugBar et Companion JS, ----
K-Meleon
, utils / Cons, ----
Opera
, utils / Asole d'erreurs, ----
Safari
, Debug / Show JavaScript Console
° modifier Fichier com.apple.Safari.plist situé dans le
répertoire : Support:\Documents and Settings\utilisateur
\Application Data\Apple Computer\Safari\Preferences\
y ajouter <key>IncludeDebugMenu</key>
----
Commenter la réponse de Bul3
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 20 févr. 2009 à 15:09
0
Merci
il faut lire :

   
   
Commenter la réponse de Bul3
cs_RomantikA 22 Messages postés lundi 25 février 2008Date d'inscription 31 mars 2012 Dernière intervention - 20 févr. 2009 à 16:15
0
Merci
re, j'ai essayé de tenir conte de tes remarques, et j'ai donc essayer de modifier quelques parties, mais dans l'ensemble cela reste "sans succes". le navigateur n'affiche plus d'erreur, mais je pense tout de même qu'il ya du boulot de correction à faire. malheureusement étant débutant dans ce domaine, j'ai déjà dépassé mes compétences, et toute tentatives de correction n'aboutissent qu'à des erreurs. Je pense donc que soit je vais devoir laisser mon code ainsi, soit je vais devoir abandoner ce projet trop complex pour mon cerveau car je n'ai malheureusement pas les qualités requises pour avancer dans le bon sens malgré ma motivation. Pour tout dire, j'ai même pas réussi à faire tout ce dont tu me parles. Le   ... je n'arrive même plus à l'adapter... bref, je vais laisser ça tranquil parceque je sent qu'au bout du compte même le background d'arrière plan ne va plus s'afficher... lol

Pour info, j'ai supprimé les ((((( )))) et miracle!: ça tourne comme dab, et la rotation se bloque au onmouseover comme demandé; mais l'image n'apparait plus en wiever.... j'ai carément enlever les onmouseover et onmouseout,  et par miracle ça rebug, l'image s'affiche à nouveau, mais comme la logique le veut, la rotation ne se met pas en pause, alor je sais que ce qui cloche viens de cette partie... mais bon, je suis largué. Donc bon. voila.bref

Je te remercie néanmoins pour ton aide.
Romantika
Commenter la réponse de cs_RomantikA
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 20 févr. 2009 à 16:38
0
Merci
Pour tout dire, j'ai même pas réussi à faire tout ce dont tu me parles.
Le
  ... je n'arrive même
plus à l'adapter..
ne pas adapter ! exécuter tel quel !
( 2 n'est jamais affiché ! )
tu as 2 onmouseover et 2 onmouseout... seuls les 1ers sont traités
Commenter la réponse de Bul3
cs_RomantikA 22 Messages postés lundi 25 février 2008Date d'inscription 31 mars 2012 Dernière intervention - 20 févr. 2009 à 18:20
0
Merci
Ba alors j'ai essayé de l'inssérer comme j'ai pu, en essayant différentes méthodes... mais je suis vraiment débutant... je craque.... c'est pa le code qui va tourner en rond, c'est mon cerveau qui fait des bond... :s lol

voila ce que c'est quand on essaie de faire des choses qui dépasse nos capadité.. :( C'est surment tout couillon, mais là... c'est du code en trop pour mon cerveau. :/

Romantika
Commenter la réponse de cs_RomantikA

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.