11548 sujets

JavaScript, DOM et API Web HTML5

bien le bonsoir,

j'ai aussi été un de ceux qui a pompé sur les tutoriels de notre hôte un exemple de menu. J'ai pris le menu anarchique que j'ai disposé sur mon site en L. Il fonctionne.
Mais, quand je change de page (je suis avec du code php) le menu s'affiche un bref instant ce qui n'est pas trés esthetique.
http://www.iteks.fr
Quelqu'un peut-il me proposer une solution ? Smiley murf
Bonjour,

Dans l'en-tête, mets ceci :

<style type="text/css">
<!--
#smenu1, #smenu2, #smenu3, #smenu4, #smenu5, #smenu6, #smenu7, #menu8
{
	display: none;
}
-->
</style>

Modifié le 26 Nov 2004 - 19:56
C'est moyen de cacher les menus directement via CSS, au cas où JS est incatif c'est mort, le menu est inutilisable.

Le mieux c'est de ne rien cacher dans les CSS, et de cacher au chargement de la page via JavaScript Smiley cligne
ElMoustiko a écrit :
C'est moyen de cacher les menus directement via CSS, au cas où JS est incatif c'est mort, le menu est inutilisable.

Oui c'est vrai. Mais le menu ne sert à rien si le JS est désactivé puisque c'est un menu en JS et les liens se trouvent dans les <div> cachés...

Pour remédier à ce problème, éventuellement, à la place de mon code :
<script type="text/javascript">
<!--
document.write('<style type="text/css">');
document.write('<!--');
document.write('#smenu1, #smenu2, #smenu3, #smenu4, #smenu5, #smenu6, #smenu7, #menu8');
document.write('{ display: none; }');
document.write('-->');
document.write('</style>');
-->
</script>


Mais je sais pas si c'est une bonne solution Smiley rolleyes

a écrit :
Le mieux c'est de ne rien cacher dans les CSS, et de cacher au chargement de la page via JavaScript Smiley cligne


Si tu regardes le script, c'est ce qui est fait.

En fait le problème est que le menu n'est pas caché durant le chargement de la page mais dès que la page a fini de se charger, le menu se cache.

C'est comme si le script qui cachait le menu se trouvait tout en bas de la page (sauf que c'est pas le cas).



[EDIT]

Si on va sur la page :
a écrit :
NORMALEMENT, CETTE PAGE NE DOIT PAS S'AFFICHER ! désolé....
Vous devez activez l'option reconnaissance du code JAVASCRIPT dans votre navigateur !


Nous sommes constructeurs d'équipements de production industriels.
Nous assurons les études, la réalisation, l'installation ainsi que le s.a.v.
Nous intervenons dans le secteur manutention et conditionnement.


Tu ne permets pas l'affichage de ta page si le JS est désactivé ? Mauvaise chose...
Modifié le 26 Nov 2004 - 22:34
Nyro Xeo a écrit :

Oui c'est vrai. Mais le menu ne sert à rien si le JS est désactivé puisque c'est un menu en JS et les liens se trouvent dans les <div> cachés...

Euh bah ça c'est clairement du suicide pour la navigation et l'indexation des pages Smiley sweatdrop

Le menu n'est pas en JS c'est la dynamisation qui l'est, donc si JS est inactif, le menu devrait toujours être utilisable.

Quand à ton ajout à base de document.write, c'est pas la meilleure des solution, le mieux est de faire une boucle qui récupères les id menu[ i] et de leur appliquer le style display: none ;

sinon pour l'utilisation d'un tel menu, alibaba t'as rien trouvé de plus complexe à utiliser pour tes visiteurs Smiley confus

Franchement la surabondance de menu déroulant n'est pas une excellente chose, d'autant que tu ne perdrais pas énormément de place à utiliser un menu plus classique pour la partie verticale.

Sinon le message "cette page ne devrait pas s'afficher bla bla" c'est pas top, surtout quand le JS est actif et qu'on tombe dessus Smiley ohwell

Ca fait pas très pro quoi Smiley cligne
Modifié le 26 Nov 2004 - 22:42
ElMoustiko a écrit :
Quand à ton ajout à base de document.write, c'est pas la meilleure des solution, le mieux est de faire une boucle qui récupères les id menu[ i] et de leur appliquer le style display: none ;/quote]
J'avoue que je ne comprend pas !
[quote=ElMoustiko]Sinon pour l'utilisation d'un tel menu, alibaba t'as rien trouvé de plus complexe à utiliser pour tes visiteurs

Une seule logique pour tous les menus me paraissait bien avec une unité de style. Le menu, tel qu'il est fait, est lu par les crawlers comme des liens et peut-etre cela favorise le classement des pages. Je ne sais pas si je suis bien clair. ex:http://www.delorie.com/web/lynxview.html
As-tu un exemple de page où le menu te parait bien fait. Encore faut-il que je sois capable.
ElMoustiko a écrit :
Sinon le message "cette page ne devrait pas s'afficher bla bla" c'est pas top, surtout quand le JS est actif et qu'on tombe dessus Smiley ohwell

rectifié, merci de l'avoir souligné
ElMoustiko a écrit :
Ca fait pas très pro quoi Smiley cligne

Disons le carrément. Je ne suis pas un pro mais je me soigne !
Ton avis m'interesse et je te remercie pour ta franchise.
A+ Smiley biggrin
Ce n'est pas le fait que les menus soient utilisable sous lynx et indexable facilement par les robots d'indexation (encore heureux Smiley cligne ), c'est au niveau de l'utilisation, c'est plutot chaotique, ils ne se déroulent pas bien en dessous ou pas bien sur le coté, ils semblent décalés, ça fait moyen quoi, mais surtout, c'est super lourd à utiliser, vraiment pas très pratique.
Pour celui du haut ça va encore, mais pour le vertical franchement, je le ferait déroulé complétement.