Page 1 sur 1

Problème avec un menu déroulant

Posté : 05 mai 2005, 19:21
par Freeman014
Bonjour, voila je fais des testes sur un site pour un menu déroulant.

adresse : [url]http://cts.soissons.free.fr[/url]

Quand la fenêtre du navigateur est en grand , il n'y a pas de problème, tout est bien aligné (je veux dire en dessous du menu socièté ou partenaires) mais lorsque je raptisse la fenêtre du navigateur ben le menu déroulant n'est plus ne dessous de son titre.

Comment faire pour régler se problème.

Merci de me répondre vite.

Re: Problème avec un menu déroulant

Posté : 05 mai 2005, 19:27
par Cyrano
Merci de me répondre vite.
J'adore ce genre de message. Même pas un bonjour pour commencer et faudrait qu'on réponde vite. Un dessert avec ça ?

Hé, le comique, on est pas payé ici, on est tous des bénévoles et on te doit rien? tu as des problèmes de mise en page ? fais donc preuve d'un minimum d'humilité et reconnais que tu as besoin d'aide au lieu d'arriver en pays conquis.

Et si tu peux pour tes prochains messages, active les bbCodes, on aura des url clicables.
Merci

Posté : 05 mai 2005, 19:41
par Freeman014
Désolé pour le message de fin et pour le bbcode je ne savais pas. Sinon pour le bonjour il y était.

Re: Problème avec un menu déroulant

Posté : 05 mai 2005, 19:45
par albat
Pssst... Cyrano... Il y a un Bonjour... :oops:
En revanche, le "Merci de me répondre vite" est totalement inapproprié et déplacé.

Soyons clairs : Les membres de ce forum sont tous volontaires et bénévoles,
et on ne formule pas d'exigences envers des gens qui fonctionnent à la bonne volonté.
C'est le plus sûr moyen de se retrouver à se démerder tout seul.

Considérons l'incident clos.
Malheureusement, Freeman014, tu n'es pas le premier à commettre ce genre de dérapages
et c'est quelque chose que nous avons du mal à supporter et ne pouvons plus laisser passer.

Posté : 05 mai 2005, 20:33
par Freeman014
Oui je m'excuse vraiment pour le message de fin.

Posté : 05 mai 2005, 20:47
par Cyrano
Ton menu dynamique doit être en position absolue par rapport à la page au lieu d'être en relatif par rapport au titre du menu concerné.

Mais là, c'est dans le JavaScript, je suis pas spécialiste.

Posté : 06 mai 2005, 00:11
par Freeman014
Merci c'est bon j'ai pu régler mon problème :D

Posté : 06 mai 2005, 01:36
par Gentoo Warrior
Salut Freeman014,

Je ne sais pas si tu as remarqué, mais avec FireFfox il y a un léger décalage et avec Opéra le menu Partenaires ne s'affiche pas.

En plus de ça, active l'affichage des erreurs de script dans Internet Exploreur, tu vas être surprit.

Outils->Otpions Internet->Avancé->Navigation et cocher Afficher une notification de chaque erreur de script

C’est juste des remarques et nullement des critiques ici. :wink:

Posté : 06 mai 2005, 11:53
par Freeman014
Ben voila je pense que j'ai réglé toutes les erreurs si il y en a encore ben dite le moi. Maintenant ca marche sous IE et sous Firefox par contre je ne sais pas sous Opere mais ca devrait etre bon.

Merci pour tout.

Posté : 06 mai 2005, 12:20
par Freeman014
A je viens d'installer Opera (7.54) et en faite le sous menu "Partenaire" apparait en dessous de mon iframe qui est au milieu, là ou il y a marquer "Bientôt le site de cts !".
Je ne vois pas comment faire pour se genre de problème.

Posté : 06 mai 2005, 14:20
par Gentoo Warrior
Je n'ai plus vus d'erreur sur IE et FireFox , c'est nickel :wink:

Par contre opéra, la version 8 pour ma part, le menu Partenaires ne s'affiche pas!!!!

voici le message d'erreur avant de planter complètement opera :roll:

Image

Posté : 06 mai 2005, 14:29
par Invité
a ca c'est embêtant je ne vois pas comment l'adapter a Opéra :?

Posté : 06 mai 2005, 14:37
par Gentoo Warrior
Si ton code d'affichage n'est pas trop volumineux, poste-le toujours, on pourra regarder pour essayer de trouver une solution.

Posté : 07 mai 2005, 09:50
par Freeman014
Voila le code :wink: .

Code : Tout sélectionner

<script language=JavaScript> self.onError=null; currentX = currentY = 0; whichIt = null; lastScrollX = 0; lastScrollY = 0; NS = (document.layers) ? 1 : 0; IE = (document.all) ? 1: 0; if(IE) document.all.horse.style.pixelTop = document.body.clientHeight - 25; if(NS) document.horse.top = document.body.clientHeight - 25; function heartBeat() { if(IE) { diffY = document.body.scrollTop; diffX = document.body.scrollLeft; } if(NS) { diffY = self.pageYOffset; diffX = self.pageXOffset; } if(diffY != lastScrollY) { percent = .1 * (diffY - lastScrollY); if(percent > 0) percent = Math.ceil(percent); else percent = Math.floor(percent); if(IE) document.all.slide.style.pixelTop += percent; if(NS) document.slide.top += percent; if(IE) document.all.horse.style.pixelTop = document.body.clientHeight - 25 + document.all.slide.style.pixelTop; if(NS) document.horse.top = document.body.clientHeight - 25 + document.slide.top; lastScrollY = lastScrollY + percent; } if(diffX != lastScrollX) { percent = .1 * (diffX - lastScrollX); if(percent > 0) percent = Math.ceil(percent); else percent = Math.floor(percent); if(IE) document.all.slide.style.pixelLeft += percent; if(NS) document.slide.left += percent; lastScrollX = lastScrollX + percent; } } function checkFocus(x,y) { var totalY, totalX; floatx = document.slide.pageX; floaty = document.slide.pageY; floatwidth = document.slide.clip.width; floatheight = document.slide.clip.height; if(20 == 0) totalY = floatheight; else totalY = 25; if(0 == 0) totalX = floatwidth; else totalX = 0; if( (x > floatx && x < (floatx+totalX)) && (y > floaty && y < (floaty+totalY))) return true; else return false; } function grabIt(e) { if(IE) { whichIt = event.srcElement; while (whichIt.id.indexOf("slide") == -1) { whichIt = whichIt.parentElement; if (whichIt == null) { return true; } } whichIt.style.pixelLeft = whichIt.offsetLeft; whichIt.style.pixelTop = whichIt.offsetTop; currentX = (event.clientX + document.body.scrollLeft); currentY = (event.clientY + document.body.scrollTop); if(20 == 0) totalY = whichIt.style.pixelHeight; else totalY = 20; if(0 == 0) totalX = whichIt.style.pixelWidth; else totalX = 0; if(!(event.clientX > whichIt.offsetLeft && event.clientX < whichIt.offsetLeft + totalX) || !(currentY > whichIt.offsetTop && currentY < whichIt.offsetTop + totalY)) whichIt = null; } else { window.captureEvents(Event.MOUSEMOVE); if(checkFocus (e.pageX,e.pageY)) { whichIt = document.slide; FloatTouchedX = e.pageX-document.slide.pageX; FloatTouchedY = e.pageY-document.slide.pageY; } } return true; } function moveIt(e) { if (whichIt == null) { return false; } if(IE) { newX = (event.clientX + document.body.scrollLeft); newY = (event.clientY + document.body.scrollTop); distanceX = (newX - currentX); distanceY = (newY - currentY); currentX = newX; currentY = newY; whichIt.style.pixelLeft += distanceX; whichIt.style.pixelTop += distanceY; if(whichIt.style.pixelTop < document.body.scrollTop) whichIt.style.pixelTop = document.body.scrollTop; if(whichIt.style.pixelLeft < document.body.scrollLeft) whichIt.style.pixelLeft = document.body.scrollLeft; if(whichIt.style.pixelLeft > document.body.offsetWidth - document.body.scrollLeft - whichIt.style.pixelWidth - 20) whichIt.style.pixelLeft = document.body.offsetWidth - whichIt.style.pixelWidth - 20; if(whichIt.style.pixelTop > document.body.offsetHeight + document.body.scrollTop - whichIt.style.pixelHeight - 5) whichIt.style.pixelTop = document.body.offsetHeight + document.body.scrollTop - whichIt.style.pixelHeight - 5; event.returnValue = false; } else { whichIt.moveTo(e.pageX-FloatTouchedX,e.pageY-FloatTouchedY); if(whichIt.left < 0+self.pageXOffset) whichIt.left = 0+self.pageXOffset; if(whichIt.top < 0+self.pageYOffset) whichIt.top = 0+self.pageYOffset; if( (whichIt.left + whichIt.clip.width) >= (window.innerWidth+self.pageXOffset-17)) whichIt.left = ((window.innerWidth+self.pageXOffset)-whichIt.clip.width)-17; if( (whichIt.top + whichIt.clip.height) >= (window.innerHeight+self.pageYOffset-17)) whichIt.top = ((window.innerHeight+self.pageYOffset)-whichIt.clip.height)-17; return false; } return false; } function dropIt() { whichIt = null; if(NS) window.releaseEvents (Event.MOUSEMOVE); return true; } if(NS) { window.captureEvents(Event.MOUSEUP|Event.MOUSEDOWN); window.onmousedown = grabIt; window.onmousemove = moveIt; window.onmouseup = dropIt; } if(IE) { document.onmousedown = grabIt; document.onmousemove = moveIt; document.onmouseup = dropIt; } if(NS || IE) action = window.setInterval("heartBeat()",1); </script> <SCRIPT language=javascript type=text/javascript> s="na";c="na";j="na";f=""+escape(document.referrer) </SCRIPT>