Débutant JS: aide pour algorithme
abcdu44
Messages postés
963
Date d'inscription
Statut
Membre
Dernière intervention
-
abcdu44 Messages postés 963 Date d'inscription Statut Membre Dernière intervention -
abcdu44 Messages postés 963 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Me revoila de nouveau pour une ultime question :-)
toujours concernant mon histoire d'animation de menu (topic n°1, topice n°2), j'ai créé un petit code en javascript (je débute, je précise!) un peu comme je pensais que ca pourrait marcher.
évidemment, si je viens ici, c'est que ca ne marche pas...
en fait, l'animation est un fondu d'images que je trouvais sympa a réaliser, qui se joue donc sur le menu, dont voici la source html:
et les 2 fichiers javascript (autre que la librairie Jquery):
fading.js
menuhover.js
fading.js fait correctement son travail, pas de problème ;)
il s'agit de menuhover.js que j'ai créé, malgré le fait que je soit débutant avec le JS, entièrement à la main: il ne semble rien faire...
De plus, j'aimerais que les images qui ont pour id "img1_1", "img2_2", "img3_3" et "img4_4" soient caché dès que la page est en chargement, jusqu'au moment où elles doivent entrer en action.
Quelqu'un qui pourrait m'aider? merci! :)
Les amis de mes amis sont mes amis. Les membres de CCM sont mes amis. Google est l'ami des membres de CCM. Donc Google est mon ami.
Me revoila de nouveau pour une ultime question :-)
toujours concernant mon histoire d'animation de menu (topic n°1, topice n°2), j'ai créé un petit code en javascript (je débute, je précise!) un peu comme je pensais que ca pourrait marcher.
évidemment, si je viens ici, c'est que ca ne marche pas...
en fait, l'animation est un fondu d'images que je trouvais sympa a réaliser, qui se joue donc sur le menu, dont voici la source html:
<div class="box"> <ul> <li> <a href="index.html"> <img src="Index.html_fichiers/img/acceuil.png" border="0" width="190" height="20" id="img1"> <img src="Index.html_fichiers/img/acceuil_h.png" border="0" width="190" height="20" id="img1_1"> </a> </li> <li> <a href="prestations.html"> <img src="Index.html_fichiers/img/prestations.png" border="0" width="190" height="20" id="img2"> <img src="Index.html_fichiers/img/prestations_h.png" border="0" width="190" height="20" id="img2_2"> </a> </li> <li> <a href="localisation.html"> <img src="Index.html_fichiers/img/localisation.png" border="0" width="190" height="20" id="img3"> <img src="Index.html_fichiers/img/localisation_h.png" border="0" width="190" height="20" id="img3_3"> </a> </li> <li> <a href="contact.html"> <img src="Index.html_fichiers/img/contact.png" border="0" width="190" height="20" id="img4"> <img src="Index.html_fichiers/img/contact_h.png" border="0" width="190" height="20" id="img4_4"> </a> </li> </ul> </div>
et les 2 fichiers javascript (autre que la librairie Jquery):
fading.js
$(document).ready(function(){ $("#img1").hover(function(){ $("#img2").fadeIn(250); $("#img3").fadeIn(250); $("#img4").fadeIn(250); $("#img1").fadeOut(250); }); $("#img2").hover(function(){ $("#img1").fadeIn(250); $("#img3").fadeIn(250); $("#img4").fadeIn(250); $("#img2").fadeOut(250); }); $("#img3").hover(function(){ $("#img1").fadeIn(250); $("#img2").fadeIn(250); $("#img4").fadeIn(250); $("#img3").fadeOut(250); }); $("#img4").hover(function(){ $("#img1").fadeIn(250); $("#img2").fadeIn(250); $("#img3").fadeIn(250); $("#img4").fadeOut(250); }); $("#contenu").hover(function(){ $("#img1").fadeIn(250); $("#img2").fadeIn(250); $("#img3").fadeIn(250); $("#img4").fadeIn(250); }); $("#contenu2").hover(function(){ $("#img1").fadeIn(250); $("#img2").fadeIn(250); $("#img3").fadeIn(250); $("#img4").fadeIn(250); }); $("#contenu3").hover(function(){ $("#img1").fadeIn(250); $("#img2").fadeIn(250); $("#img3").fadeIn(250); $("#img4").fadeIn(250); }); });
menuhover.js
$(document).ready(function(){ if(("#img1").hidden {("#img1_1").fadeIn(250); }); else(("#img1_1").fadeOut(250); )}); $(document).ready(function(){ if(("#img2").hidden {("#img2_2").fadeIn(250); }); else(("#img2_2").fadeOut(250); )}); $(document).ready(function(){ if(("#img3").hidden {("#img3_4").fadeIn(250); }); else(("#img3_3").fadeOut(250); )}); $(document).ready(function(){ if(("#img4").hidden {("#img4_4").fadeIn(250); }); else(("#img4_4").fadeOut(250); )});
fading.js fait correctement son travail, pas de problème ;)
il s'agit de menuhover.js que j'ai créé, malgré le fait que je soit débutant avec le JS, entièrement à la main: il ne semble rien faire...
De plus, j'aimerais que les images qui ont pour id "img1_1", "img2_2", "img3_3" et "img4_4" soient caché dès que la page est en chargement, jusqu'au moment où elles doivent entrer en action.
Quelqu'un qui pourrait m'aider? merci! :)
Les amis de mes amis sont mes amis. Les membres de CCM sont mes amis. Google est l'ami des membres de CCM. Donc Google est mon ami.
A voir également:
- Débutant JS: aide pour algorithme
- Logiciel de programmation pour débutant - Guide
- Logiciel montage vidéo débutant - Guide
- Formation sap débutant pdf - Forum Logiciels
- Comment faire pour devenir consultant SAP: FI/CO - Forum compta / gestion
- Arrondi js ✓ - Forum Windows
3 réponses
Bonjour,
te manque le $ pour que ca marche
$("#img2").hidden
bien que je soit pas sur que le $ te récupère réellement l objet img2.. j utiliserais plutot un getelementbyid()...
et pour cacher tes images au démarrage :
<img src="Index.html_fichiers/img/prestations.png" style="visibility:hidden;border:0px;width:190px;height:20px" id="img2">
te manque le $ pour que ca marche
$("#img2").hidden
bien que je soit pas sur que le $ te récupère réellement l objet img2.. j utiliserais plutot un getelementbyid()...
et pour cacher tes images au démarrage :
<img src="Index.html_fichiers/img/prestations.png" style="visibility:hidden;border:0px;width:190px;height:20px" id="img2">
abcdu44
Messages postés
963
Date d'inscription
Statut
Membre
Dernière intervention
111
je vais tester ca de suite, et je te tiens au courant ;)
jjsteing
Messages postés
1670
Date d'inscription
Statut
Contributeur
Dernière intervention
181
Et donc ???
et donc, les image ne s'affichent pas aux chargement de la page, c'est un premier point qui marche ;)
Par contre ces même images (qui sont des images de substitutions) n'apparaissent pas lorsque la fonction fadeIn le nécessite
en fait je voudrais que le code fonctionnel (en JS) correspondent à cette manière littéraire de le dire:
"Si l'élément identifié par img1 est cachée (invisible), montrer l'élément img1_1. Sinon cacher l'élément img1_1"
autre chose à proposer?
Par contre ces même images (qui sont des images de substitutions) n'apparaissent pas lorsque la fonction fadeIn le nécessite
en fait je voudrais que le code fonctionnel (en JS) correspondent à cette manière littéraire de le dire:
"Si l'élément identifié par img1 est cachée (invisible), montrer l'élément img1_1. Sinon cacher l'élément img1_1"
autre chose à proposer?
Hey :)
donc garde le hidden dans ton code par défault (cad au chargement de ta page).
Nomme l'id de toutes tes images exactement pareil : Img1, Img2, Img3, ect...
Et en js la fonction devrait etre du style :
function AfficheImage(NomIdImg){
for (i=1 to 3) {//suivant le nb d image
document.getelementbyid("Img" + i).hidden=true //on cache tts les images
}
document.element.getelemntid(NomIdImg).hidden=false //on affiche l image voulue
}
enfin, t arrange a ta sauce.. je connais pas ton code ;)
mais je peux t aider au besoin ;)
@++
Courage.. la route est longue et vallonnée d'obstacles, mais une pente douce est toujours après la montée :p hi hi.. j suis philo ce soir ;)
N'hésitez pas à poser des questions, il vaut mieux être con 5 min que le rester toute sa vie ;)
N'oubliez pas de mettre votre Post en 'Résolu' quand c'est le cas :-D
donc garde le hidden dans ton code par défault (cad au chargement de ta page).
Nomme l'id de toutes tes images exactement pareil : Img1, Img2, Img3, ect...
Et en js la fonction devrait etre du style :
function AfficheImage(NomIdImg){
for (i=1 to 3) {//suivant le nb d image
document.getelementbyid("Img" + i).hidden=true //on cache tts les images
}
document.element.getelemntid(NomIdImg).hidden=false //on affiche l image voulue
}
enfin, t arrange a ta sauce.. je connais pas ton code ;)
mais je peux t aider au besoin ;)
@++
Courage.. la route est longue et vallonnée d'obstacles, mais une pente douce est toujours après la montée :p hi hi.. j suis philo ce soir ;)
N'hésitez pas à poser des questions, il vaut mieux être con 5 min que le rester toute sa vie ;)
N'oubliez pas de mettre votre Post en 'Résolu' quand c'est le cas :-D
en fait, tu vois, j'veux faire un effet de roll over animé, mais pour éviter un temps de chargement trop long, j'préfère éviter de créer des SWF (en plus ca demanderais qu'adobe flash soit installé... ('fin je crois) ).
donc tu vois, j'ai 8 images différentes, qui vont par 2... ca fait 4 items
en fait, il faudrais que les 4 images "de survol" soit cachées au lancement de la page.. ca, c'est déja fait, et il reste alors 4 images, les images de "non-survol"
quand une image de "non-survol" est survolée par le pointeur, j'voudrais qu'elle disparaisse avec un effet de fondu (ce que j'arrive à faire avec un fadeOut), et qu'à la place, une image "de survol" prenne sa place avec un effet de fondu (ce que j'arrive à faire également avec un fadeIn), une fois que l'image de "non-survol" a complètement disparu.
Quand le curseur ne survole plus l'image, il faudrais alors que le contraire se fasse: l'image "de survol" disparait avec un effet de fondu (encore le fadeOut) et l'image de "non-survol" apparait avec effet de fondu (fadeIn).
Les images de "non-survol" sont celles identifiées img1 img2 img3 img4
Les images "de survol" sont donc img1_1 img2_2 img3_3 img4_4
donc tu vois, j'ai 8 images différentes, qui vont par 2... ca fait 4 items
en fait, il faudrais que les 4 images "de survol" soit cachées au lancement de la page.. ca, c'est déja fait, et il reste alors 4 images, les images de "non-survol"
quand une image de "non-survol" est survolée par le pointeur, j'voudrais qu'elle disparaisse avec un effet de fondu (ce que j'arrive à faire avec un fadeOut), et qu'à la place, une image "de survol" prenne sa place avec un effet de fondu (ce que j'arrive à faire également avec un fadeIn), une fois que l'image de "non-survol" a complètement disparu.
Quand le curseur ne survole plus l'image, il faudrais alors que le contraire se fasse: l'image "de survol" disparait avec un effet de fondu (encore le fadeOut) et l'image de "non-survol" apparait avec effet de fondu (fadeIn).
Les images de "non-survol" sont celles identifiées img1 img2 img3 img4
Les images "de survol" sont donc img1_1 img2_2 img3_3 img4_4