Ze-Doms Troller c'est bien :p | Bonjour,
je souhaiterais créer une page qui me permette de naviguer rapidement au sein d'une Base SQL.
J'ai cherché des solutions genre des menus stylés tout faits en CSS/ javascript/dhtml toutefois vu la taille de la table sur laquelle la requête de navigation doit s'effectuer (plus de 1300 lignes), un script trop compliqué alourdirait le serveur de requêtes et qui plus est ralentirait la navigation...
Je suis tombé sur un script se situant sur la page de http://www.script-masters.com/ qui est certes simple mais rudement efficace.
Seulement voilà, l'espace qui m'a été alloué est une frame dans une page web. Et ce joli petit script ne semble pas vouloir marcher dans les Frames . N'ayant que de très vagues notions de javascript je me suis un peu penché dessus sans succès pendant une semaine. voici le script intégré dans un exemple:
La page contenant la Frame:
Code :
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
- <html>
- <head>
- <title>Navagateur BDD</title>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- </head>
- <FRAMESET ROWS="100,*">
- <FRAME NAME="haut" FRAME SRC="page1.html" noresize scrolling="no">
- <FRAME NAME="bas" FRAME SRC="fastnav.html" BORDER="0" FRAMEBORDER="no" FRAMESPACING="0">
- </FRAMESET>
- </HTML>
|
et pour finir la page fastnav.html avec le script intégré dedans:
Code :
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
- <html>
- <head>
- <title>Navagateur BDD</title>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- <SCRIPT LANGUAGE="JavaScript">
- /* Daniel Fabien - 31/01/2003
- * Double menu deroulant dynamique
- *
- * Pour tout renseignements :
- * http://www.script-masters.com/home/forum/
- * */
- menu=new Array()
- // Rajoutez un élément au tableau menu pour chaque categorie supplémentaire
- // De la même façon, pensez à modifier le formulaire pour rajouter des categories.
- menu[0]=new Array()
- menu[1]=new Array()
- menu[2]=new Array()
- // Modifiez ici les variables pour les menus deroulant
- // la première valeur est le titre, la seconde l'url
- // metter l'url à "null" si vous ne souhaitez pas une redirection pour ce titre
- menu[0][0]=new Option("Sous Theme - Internet","null" )
- menu[0][1]=new Option("Actualite","http://www.script-masters.com/" )
- menu[0][2]=new Option("Ressources Webmaster","http://www.script-masters.com/" )
- menu[1][0]=new Option("Sous Theme - Informatique","null" )
- menu[1][1]=new Option("Programmation","http://www.script-masters.com/" )
- menu[1][2]=new Option("Materiel","http://www.script-masters.com/" )
- menu[2][0]=new Option("Sous Theme - Actualité","null" )
- menu[2][1]=new Option("France","http://www.script-masters.com/" )
- menu[2][2]=new Option("Monde","http://www.script-masters.com/" )
- // Ne rien modifié sous cette ligne
- function changeSousTheme(numeroMenu){
- for (i=document.menuDeroulant.sousTheme.options.length-1;i>0;i--){
- document.menuDeroulant.sousTheme.options[i]=null
- }
- for (i=0;i<menu[numeroMenu].length;i++){
- document.menuDeroulant.sousTheme.options[i]=new Option(menu[numeroMenu][i].text,menu[numeroMenu][i].value)
- }
- document.menuDeroulant.sousTheme.selectedIndex=0
- }
- function selectmenu(theme_prin){
- if (theme_prin.theme.options[theme_prin.theme.selectedIndex].value == "null" ){
- alert('selectionnez d\'abord un theme');
- }
- else{
- window.top.location.href = theme_prin.theme.options[theme_prin.theme.selectedIndex].value;
- }
- }
- function destination(){
- var destination = document.menuDeroulant.sousTheme.options[document.menuDeroulant.sousTheme.selectedIndex].value;
- if(destination=="null" ){
- alert('Veuillez saisir une destination valide!');
- }
- else{
- window.top.location.href = destination;
- }
- }
- </SCRIPT>
- </head>
- <body>
- <center>Attention : toutes les urls menent vers la page principal de Script Masters</center>
- <FORM NAME="menuDeroulant">
- <div align="center">
-
- <SELECT NAME="theme" SIZE=1 onChange="selectmenu(this.form)">
- <OPTION selected VALUE="null">-=Theme Principal=-
- <OPTION VALUE="Javascript:changeSousTheme(0)">Internet
- <OPTION VALUE="Javascript:changeSousTheme(1)">Informatique
- <OPTION VALUE="Javascript:changeSousTheme(2)">Actualité
- </SELECT>
- <SELECT NAME="sousTheme" style="width:225">
- <OPTION VALUE="null">Selectionner D'abord Un Theme
- </SELECT>
- <INPUT TYPE=button onclick="destination()" VALUE="Valider">
- </div>
- </FORM>
- </body>
- </html>
|
Si une âme charitable pouvait me corriger le script je lui en serait très reconnaissant
Edit: En tout cas m'expliquer pourquoi ça ne marche pas dans une frame
et/ou me mettre sur la voie d'une solution
Ps: le script fonctionne à la base mais hors d'une frame... Message édité par Ze-Doms le 07-12-2004 à 15:25:35
|