Bonjour Smiley smile

Je suis très débutante mais j'ai réussi à faire un site esthétiquement correct . J'ai utilisé à tort les balises marquee pour faire 4 défilements d'images sur la page d'accueil... j'ai donc cherché et trouvé un slide show sympa sur Dynamic drive pour éliminer ces balises : http://www.dynamicdrive.com/dynamicindex14/leftrightslide.htm

Or, je me heurte à 2 problèmes:

le 1er, c'est que mon menu déroulant vertical ne veut plus se refermer

le 2ème, c'est que je n'arrive pas à mettre ce script plusieurs fois sur la même page. Je l'avais mis dans la page html directement alors j'ai pensé qu'il fallait créer une page à part en l'appelant avec
<script type="text/javascript" language="javascript" src="slideshow....js"></script> 
mais ça ne change rien

Pouvez vous m'aider pour résoudre ces 2 problèmes s'il vous plait ?

Voici le script du menu

		<script type="text/javascript">
//<![CDATA[
<!--
window.onload=show;
function show(id) {
var d = document.getElementById(id);
       for (var i = 1; i<=10; i++) {
               if (document.getElementById('smenu'+i)) {document.getElementById('smenu'+i).style.display='none';}
       }
if (d) {d.style.display='block';}
}
// -->
//]]>
		</script>


Et celui du slide show

			


/***********************************************
* Conveyor belt slideshow script- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at  http://www.dynamicdrive.com/  for full source code
***********************************************/


//Specify the slider's width (in pixels)
var sliderwidth="675px"
//Specify the slider's height
var sliderheight="200px"
//Specify the slider's slide speed (larger is faster 1-10)
var slidespeed=3
//configure background color:
slidebgcolor="#F4D397"

//Specify the slider's images
var rightleftslide=new Array()
var finalslide=''
rightleftslide[0]='<a href="../residentiels/residentiels03.html"><img src="residentiels/la-residence-biloute.jpg" border=0><\/a>'
rightleftslide[1]='<a href="../residentiels/residentiels03.html"><img src="residentiels/marine-biloute.jpg" border=0><\/a>'
rightleftslide[2]='<a href="../residentiels/residentiels03.html"><img src="residentiels/mi-casa-biloute.jpg" border=0><\/a>'
rightleftslide[3]='<a href="../vetements/vetements03.html"><img src="vetements/adultrobe_charme_rose-elinalunea.jpg" border=0><\/a>'
rightleftslide[4]='<img src="residentiels/valise-sims3.jpg" border=0>'
rightleftslide[5]='<a href="../vetements/vetements01.html"><img src="vetements/adolingeriejaune-elinalunea.jpg" border=0><\/a>'
rightleftslide[6]='<a href="../genes/genes01.html"><img src="genes/yeux_realistes_elinalunea.jpg" border=0><\/a>'
rightleftslide[7]='<a href="../communautaires/communautaires01.html"><img src="communautaires/patisserie-biloute.jpg" border=0><\/a>'
rightleftslide[8]='<a href="../animaux/animaux01.html"><img src="animaux/chat-commun-vorcan.jpg" border=0><\/a>'
rightleftslide[9]='<a href="../residentiels/residentiels01.html"><img src="residentiels/automnale-mya.jpg" border=0 <\a>'
rightleftslide[10]='<img src="residentiels/valise-sims2.jpg" border=0>'

//Specify gap between each image (use HTML):
var imagegap=" "

//Specify pixels gap between each slideshow rotation (use integer):
var slideshowgap=50


////NO NEED TO EDIT BELOW THIS LINE////////////

var copyspeed=slidespeed
rightleftslide='<nobr>'+rightleftslide.join(imagegap)+'<\/nobr>'
var iedom=document.all||document.getElementById
if (iedom)
document.write('<span id="temp" style="visibility:hidden;position:absolute;top:-100px;right:-9000px">'+rightleftslide+'<\/span>')
var actualwidth=''
var cross_slide, ns_slide

function fillup(){
if (iedom){
cross_slide=document.getElementById? document.getElementById("test2") : document.all.test2
cross_slide2=document.getElementById? document.getElementById("test3") : document.all.test3
cross_slide.innerHTML=cross_slide2.innerHTML=rightleftslide
actualwidth=document.all? cross_slide.offsetWidth : document.getElementById("temp").offsetWidth
cross_slide2.style.right=actualwidth+slideshowgap+"px"
}
else if (document.layers){
ns_slide=document.ns_slidemenu.document.ns_slidemenu2
ns_slide2=document.ns_slidemenu.document.ns_slidemenu3
ns_slide.document.write(rightleftslide)
ns_slide.document.close()
actualwidth=ns_slide.document.width
ns_slide2.right=actualwidth+slideshowgap
ns_slide2.document.write(rightleftslide)
ns_slide2.document.close()
}
righttime=setInterval("slideright()",30)
}
window.onload=fillup

function slideright(){
if (iedom){
if (parseInt(cross_slide.style.right)>(actualwidth*(-1)+8))
cross_slide.style.right=parseInt(cross_slide.style.right)-copyspeed+"px"
else
cross_slide.style.right=parseInt(cross_slide2.style.right)+actualwidth+slideshowgap+"px"

if (parseInt(cross_slide2.style.right)>(actualwidth*(-1)+8))
cross_slide2.style.right=parseInt(cross_slide2.style.right)-copyspeed+"px"
else
cross_slide2.style.right=parseInt(cross_slide.style.right)+actualwidth+slideshowgap+"px"

}
else if (document.layers){
if (ns_slide.right>(actualwidth*(-1)+8))
ns_slide.right-=copyspeed
else
ns_slide.right=ns_slide2.right+actualwidth+slideshowgap

if (ns_slide2.right>(actualwidth*(-1)+8))
ns_slide2.right-=copyspeed
else
ns_slide2.right=ns_slide.right+actualwidth+slideshowgap
}
}


if (iedom||document.layers){
with (document){
document.write('<table border="0" cellspacing="0" cellpadding="0"><td>')
if (iedom){
write('<div style="position:relative;width:'+sliderwidth+';height:'+sliderheight+';overflow:hidden">')
write('<div style="position:absolute;width:'+sliderwidth+';height:'+sliderheight+';background-color:'+slidebgcolor+'" onMouseover="copyspeed=0" onMouseout="copyspeed=slidespeed">')
write('<div id="test2" style="position:absolute;right:0px;top:0px"><\/div>')
write('<div id="test3" style="position:absolute;right:-1000px;top:0px"><\/div>')
write('<\/div><\/div>')
}
else if (document.layers){
write('<ilayer width='+sliderwidth+' height='+sliderheight+' name="ns_slidemenu" bgColor='+slidebgcolor+'>')
write('<layer name="ns_slidemenu2" right=0 top=0 onMouseover="copyspeed=0" onMouseout="copyspeed=slidespeed"><\/layer>')
write('<layer name="ns_slidemenu3" right=0 top=0 onMouseover="copyspeed=0" onMouseout="copyspeed=slidespeed"><\/layer>')
write('<\/ilayer>')
}
document.write('<\/td><\/table>')
}
}
Bonjour Benjamin Smiley smile J'ai déjà cherché mais je n'ai rien trouvé qui corresponde à mon besoin. Si tu veux voir sur mon site ce dont il s'agit (le 1er est fait avec le script dont je parle dans mon 1er post, les 3 autres sont faits avec marquee). http://simsstation.free.fr/
Bonjour,

Le script de slideshow trouvé est complètement dépassé. De manière générale je déconseille d'aller piocher des scripts sur Dynamic Drive (site un peu vieux, on va dire). Ou, plus largement, d'aller piocher des scripts que l'on ne comprend pas du tout, où que ce soit.

JavaScript est une technologie moins abordable qu'HTML ou CSS. Avant d'en mettre partout dans ses pages, il est préférable de se former aux bases de ce langage de programmation. À défaut, vire ce script et continue à utiliser MARQUEE.
Bonsoir Florent ! Tu as raison, c'est idiot d'utiliser bêtement des outils dont on ne sait pas se servir. Mais vois tu, j'ai déjà dû me familiariser avec le html et le css pour arriver à sortir un site à peu près convenable... ce fut un plaisir mais je n'ai pas beaucoup de temps disponible pour me lancer dans l'étude du javascript pour l'instant (peut être lorsque je serai à la retraite^^). J'espérais en venant ici avoir une réponse, une explication pas une solution toute faite. J'ai dû faire erreur, tant pis pour moi. Bonne soirée et merci Smiley lol
Eliya a écrit :
J'espérais en venant ici avoir une réponse, une explication pas une solution toute faite.

Le problème c'est qu'avec JavaScript on parle d'un langage de programmation, qui exploite des API standardisées des navigateurs web (DOM), avec un certain nombre de bugs ou différences entre les navigateurs (notamment entre IE et le reste du monde). Bref, c'est un sujet technique et complexe.

Une solution toute faite (ce qui n'est pas le but de ce forum, et ce que tu ne demandes pas), ce serait t'écrire un tutoriel sur mesure disant quels codes sont à copier-coller, avec des pages d'exemple, etc.

Une explication, eh bien ça suppose que tu connaisses déjà les bases de JavaScript. Ou alors l'explication devra être un cours complet sur ces bases, plus les quelques informations qui concernent directement ce cas de figure.

C'est donc un peu une impasse.

Une solution éventuelle, mais qui a ses limites, est d'utiliser une bibliothèque JavaScript telle que jQuery, et pour les différents effets voulus on utiliser un plugin jQuery adapté. Ça demandera tout de même un minimum de lecture (tutoriels d'introduction de jQuery dans la documentation officielle), mais ça reste abordable. Là où ça coince, c'est si tu rencontres des difficultés pour mettre en place un script jQuery; même si beaucoup sont relativement simples à utiliser, en cas de blocage si on n'a pas de bases en JavaScript on se retrouve le bec dans l'eau.

Moralité: le développement web est un métier. Smiley cligne