begin process at 2012 05 28 23:17:11
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Javascript

 > 

Archives

 > 

AU SECOURS !!!

 > 

Adapter un script pour qu'il puisse marcher dans une frame


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Adapter un script pour qu'il puisse marcher dans une frame

mardi 7 décembre 2004 à 15:16:25 | Adapter un script pour qu'il puisse marcher dans une frame

doms3v

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:

<!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:
<!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 ....
Merci d'avance
mardi 7 décembre 2004 à 16:21:03 | Re : Adapter un script pour qu'il puisse marcher dans une frame

the_smurf

Une solution a ton pb:

1/ Tu mets tout le js dans ta page mère où tu as ton frame set.
2/ Dans le script tu modifie toutes les acces en remplaçant document pas bas.document pour que le js traite bien les éléments de la frame du bas.

Tes sources:
<!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=bas.document.menuDeroulant.sousTheme.options.length-1;i>0;i--){
bas.document.menuDeroulant.sousTheme.options[i]=null
}

for (i=0;i<menu[numeroMenu].length;i++){
bas.document.menuDeroulant.sousTheme.options[i]=new Option(menu[numeroMenu][i].text,menu[numeroMenu][i].value)
}

bas.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 = bas.document.menuDeroulant.sousTheme.options[bas.document.menuDeroulant.sousTheme.selectedIndex].value;

if(destination=="null"){
alert('Veuillez saisir une destination valide!');
}
else{
window.top.location.href = destination;
}
}

</SCRIPT>

</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 fastnav:

<!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>
mercredi 8 décembre 2004 à 14:17:55 | Re : Adapter un script pour qu'il puisse marcher dans une frame

doms3v

merciiii ça marche, quand je pense aux soirées que j'ai passé à tenter de trouver la soluce un boucain de javascript à la main...
Là y a pas photo je vais apprendre sérieusement ce language :p !

Merci encore de ton aide!
vendredi 29 avril 2005 à 00:32:19 | Re : Adapter un script pour qu'il puisse marcher dans une frame

kiffekoi

Bonjour,

j'ai le même problème que celui qui a été résolu ici, et malgré ça je ne comprends pas

En fait j'utilise une redirection je suis donc dans une frame.
Je veux faire un menu dynamique.
Entre les balise <head> j'ai misça : 
 <script type="text/javascript" language="JavaScript1.2" src="stm31.js"></script>

le fichier stm31.js a été codé à partir d'un logiciel pour réaliser les menu dynamiques, car je ne connais absolument tien en javascript.

puis dans le body j'ai :

<script type="text/javascript" language="JavaScript1.2">
<!--
stm_bm(["menu59f5",400,"","blank.gif",0,"","",0,0,250,0,1000,1,0,0,"","",0],this);
stm_bp("p0",[0,4,0,0,2,3,0,7,100,"",-2,"",-2,50,0,0,"#fffff7","#fffff7","",3,1,1,"#000000"]);
stm_ai("p0i0",[0,"ACCUEIL","","",-1,-1,0,"http://mon_lien" ,"_self","","","","",0,0,0,"","",0,0,0,1,0,"#fffff7",0,"#b5bed6",0,"","",3,3,1,1,"#fffff7","#000000","#000000","#000000","8pt Verdana","8pt Verdana",0,0]);
stm_aix("p0i1","p0i0",[0,"PRINCIPE","","",-1,-1,0,"","_self","","","","",0,0,0,"arrow_r.gif","arrow_r.gif",7,7]);
stm_bpx("p1","p0",[1,4,0,0,2,3,0,0]);
stm_aix("p1i0","p0i0",[0,"sous menu"]);
stm_ep();
stm_ep();
stm_em();
//-->
</script>

j'obtiens un message d'erreur à cause de la frame.
Est ce que tu pourrais me dire comment l'adapter pour que ça marche stp, sachant que je n'ai pas accès à la page où sont définis les frames.

Merci pour l'aide


Cette discussion est classée dans : script, menu, http, option, masters


Répondre à ce message

Sujets en rapport avec ce message

Problème de script dans mon menu [ par JABE ] Bonsoir,J'ai essayé de créer un menu pour mon site à partir du modèle suivant: http://css.alsacreations.com/modelesmenus/vd2.htm seulement j'ai p menu [ par loubaba ] slt tt le mondevoila je suis en train de cree un site sur ma region et j'ai besoin des menus que j'ai trouver sur ce site:http://www.isaip.orget si qq utiliser un script dans un autre script [ par xav20 ] bonjour a tous, je suis un nouveau webmaster, je recherche un moyen de faire marcher un javascript dans un autre... je m'explique :je voudrai rendre i [Recherche] Script menu. [ par _solaris_ ] Salut à tous.Jeuis nouveau ici, et je cherchais un script mais je n'arrive pas a mettre la main dessus.Je cherche un menu qui serait sur le coté de la Ptit soucis de script - BESOIN D'AIDE [ par kanabinch ] Bonjour, j'ai une partie de mon code et je souhaiterai que mon menu soit dans un , j'ai essayé de faire quelque chose mais je ne parvient pas à avoir menu cascade...ur ! [ par pointup ] Bonjour, Pas très à l'aise avec les calques de Dreamweaver pour réaliser un menu horizontal type cascade, j'ai téléchargé sur le web un modèle script  Intégrer un script [ par pyroshugo ] Bonsoir,Je sais que mon questionnement va en faire sourire plus d'un mais tant pis, il faut bien débuter !Je voudrais intégrer dans une page HTML le s [CHERCHE] Menu Assez Spécial [ par ThiWeb ] Bonjour,Encore un menu me direz vous... En fait j'ai déjà un menu tout prêt et qui fonctionne, mais je souhaite le fusionner avec d'autres fonctions.J Chargement de script [ par Straw ] Bonjour  à tous, Je suis en train de concevoir ce site-ci Il possède un menu déroulant horizontal, c'est une suite de et un script ja Recherche script sinple ( pour vous lol ) [ par dededede4 ] Bon, je echerche un script que je met sur tt mes page pour faire un menu (  www.serviceadede.be ) qui ne se vois pas...Je veux pas de barre propose de


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,562 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales