arnaultp
Messages postés29Date d'inscriptionmercredi 20 juin 2007StatutMembreDernière intervention25 juillet 2007
-
26 juin 2007 à 16:17
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 2011
-
27 juin 2007 à 17:39
Bonjour à tous!
J'essaie de mettre en liaison deux scripts (l'un appelle l'autre). Tout fonctionnait bien quand je passait deux paramètres. Par contre, dès que je suis passé au 3e paramètre il a pas aimé, et depuis il me dit même que mon second argument est Null ou n'est pas un objet.............
J'en ai carrément trop marre!
Voici les deux scripts :
menu_dynamique_dhtml:
<!--
ejs_mv3_largeur = 150;
ejs_mv3_hauteur = 400;
/* LISTE DES MENU */
ejs_mv3_menu = new Array;
/*ejs_mv3_menu[0] = "Societe";
ejs_mv3_menu[1] = "Qualité";
ejs_mv3_menu[2] = "Documents Types";
ejs_mv3_menu[3] = "Aide / Formation";
*/
//window.onload = new Function("ejs_mv3_show("menu")");
-->
defilement_menu:
<!--
//images du manège
var pict = ["js/sodedat93.PNG",
"js/qualite.jpg",
"js/documents_types.png",
"js/help.png"];
//lien des vignettes dans l'ordre des images ci dessus
var lien = ["sodedat();",
"qualite();",
"documents_types();",
"help();"];
var angle 0, ll, hh, bcl, vit 0.05;
//taille des vignettes
var taille = 50;
//largeur de tout le manège
var largeur = 30*pict.length;
//hauteur de tout le manège
var hauteur = 40;
var ejs_mv3_largeur = 150;
var ejs_mv3_hauteur = 400;
function window_onload()
{
for( i=1 ; i"
}
return move()
}
function move()
{
ll=document.body.clientWidth/2
hh=document.body.clientHeight/2
angle=angle-vit
for( i=1 ; i
Donc pour les explications : quand je clique sur l'image qui actionne 'sodedat()' dans le 2e script, l'erreur est dite en ligne 4, mais le debugger de windows me dit qu'il ne peut pas afficher le code source d'où elle est tirée.
Et lorsque je clique sur l'image qui actionne 'qualite()' toujours dans le 2e script, l'erreur est en ligne 72 de 1er script et me dit que 'length' est Null ou n'est pas un objet.
WhiteMagus
Messages postés764Date d'inscriptionlundi 21 juin 2004StatutMembreDernière intervention 5 février 2010 26 juin 2007 à 22:27
Je suis désolé, mais j'ai pas envie de me taper tout le code pour identifier les bouts qui marchent pas
Si possible, j'aimerai que tu caractérises ces morceaux en les changeant de couleur par exemple et donner l'erreur exeacte donnée par IE ou mieux Firefox.
Merci.
++
function ejs_mv3_show( menu , tab_menu , tab_lien )
{
for( var i=0 ; i<tab_menu.length ; i++ ) //l'erreur est donné à cette ligne-ci par IE - 'length' est Null ou n'est pas un objet
{
ejs_mv3_menu[i] = tab_menu[i];
}
for( var j=0 ; j<tab_lien.length ; j++ ) // l'erreur se répand ici si l'autre n'existe pas
{
ejs_mv3_lien[j] = tab_lien[j];
}
//window.onload = new Function("ejs_mv3_show("menu")");
-->
defilement_menu:
<!--
//images du manège
var pict = ["js/sodedat93.PNG",
"js/qualite.jpg",
"js/documents_types.png",
"js/help.png"];
//lien des vignettes dans l'ordre des images ci dessus
var lien = ["sodedat();",
"qualite();",
"documents_types();",
"help();"];
var angle 0, ll, hh, bcl, vit 0.05;
//taille des vignettes
var taille = 50;
//largeur de tout le manège
var largeur = 30*pict.length;
//hauteur de tout le manège
var hauteur = 40;
var ejs_mv3_largeur = 150;
var ejs_mv3_hauteur = 400;
function window_onload()
{
for( i=1 ; i"
}
return move()
}
function move()
{
ll=document.body.clientWidth/2
hh=document.body.clientHeight/2
angle=angle-vit
for( i=1 ; iejs_mv3_show( "menu" , menu_societe , lien_societe ); // j'appelle une fonction du 1er script - le nombre d'argument est correct et ils sont pleins
}
function qualite()
{
var menu_qualite = new Array;
var lien_qualite = new Array;
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 201116 27 juin 2007 à 17:39
B onjour...
Le problème vient du fait qu'une fois tu appelles la fonction avec 3 arguments et plusieurs fois avec un seul argument
Pour les cas ou tu ne passe qu'un ou deus arguments il te faut tester leur existence
function ejs_mv3_show( menu , tab_menu , tab_lien ){
if( tab_menu) // test si existe for( var i= 0 ; i<tab_menu.length ; i++ ){
ejs_mv3_menu[i] = tab_menu[i];
}
if( tab_lien)