Problème d'affichage de calques sous firefox

Résolu
JB_A Messages postés 301 Date d'inscription   Statut Membre Dernière intervention   -  
JB_A Messages postés 301 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai un problème avec un javascript qui me permet d'afficher des calques (DIV). Cela fonctionne parfaitement sous IE mais pas sous Firefox.

Le javascript :


<script LANGUAGE="JavaScript1.2">
<!--

function MM_findObj(n, d) { //v3.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
}

function MM_showHideLayers() { //v3.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; }
    obj.visibility=v; }
}

//-->
</script>



Dans la page :

<table border="0" cellspacing="0" cellpadding="2">
<tr>
<td><span class="normal">				
<input type="radio" name="avis" value="9" onClick="MM_showHideLayers
('raison','','hide');">&nbsp;Oui&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="radio" name="avis" value="10" onClick="MM_showHideLayers
('raison','','show');">&nbsp;Non&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;	
</tr>
</table>

<div id="raison" style="position:absolute; left:250px; top:260px; width:200px; height:50px; z-index:1;
 visibility: hidden" align="left">
<table border="0" cellspacing="0" cellpadding="2">
<tr>
<td><span class="normal">Pour quelle(s) raison(s) : 
<input type="text" name="pourquoi" size="70"></input></span>
</td>
</tr>
</table>
</div>



Merci par avance de vos réponses.
A voir également:

2 réponses

JB_A Messages postés 301 Date d'inscription   Statut Membre Dernière intervention   5
 
Merci beaucoup, cela marche sans problème...

@ +
2
PhP Messages postés 1770 Date d'inscription   Statut Membre Dernière intervention   606
 
Bsr

Ha comme d'hab avec ces fichues fonctions MacroMedia :-(

Laisse tomber leurs fonctions ( indignes de figurer dans tout site web qui se respecte !)
et apprends le Javascript tu gagneras du temps lol

La preuve :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
	  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html  xml:lang="fr" lang="fr" xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<style>
*
{
	font-family : arial;
	font-size : 12pt;
}
</style>

<script>
function hideElement(id,hide)
{
	var elt = document.getElementById(id);
	
	if (hide)
	{
		elt.style.visibility = "hidden";
	}
	else
	{
		elt.style.visibility = "visible";	
	}
}
</script> 

</head>
<body>
</div> 
<form>
<table border="0" cellspacing="0" cellpadding="2">
	<tr>
		<td width="100px">	
			<input type="radio" name="avis" value="9" onClick="hideElement('raison',true);">&nbsp;Oui
		</td>
		<td>	
			<input type="radio" name="avis" value="10" onClick="hideElement('raison',false);">&nbsp;Non	
		</td>	
	</tr>
</table>

<div id="raison" style="position:absolute; left:250px; top:260px; width:200px; height:50px; z-index:1;
 visibility: hidden" align="left">
<table border="0" cellspacing="0" cellpadding="2">
	<tr>
		<td><span class="normal">Pour quelle(s) raison(s) : 
			<input type="text" name="pourquoi" size="70"></input></span>
		</td>
	</tr>
</table>
</div>
</form>
</body>
</html>

0