Parade au style.width sous FireFox ?

Résolu
Shibo_Sources Messages postés 18 Date d'inscription dimanche 2 janvier 2005 Statut Membre Dernière intervention 3 août 2008 - 6 mars 2006 à 23:40
Shibo_Sources Messages postés 18 Date d'inscription dimanche 2 janvier 2005 Statut Membre Dernière intervention 3 août 2008 - 7 mars 2006 à 19:54
Bonjour,
je découvre à peine toutes les possibilités qu'offre le javascript ce qui explique mon niveau (je ne me suis pas trompé de section au moins :)).

Durant mon temps perdu j'ai créé un blog en php qui regorge de javascript. Ma dernière idée est d'ajouter un liens qui permettrais de cacher le menu. Quand on click dessu, le script lié fait un style.display='none' et redimensionne le div central avec un style.width.

Voilà pour l'explication. Mon problème est que sous firefox sa ne fonctionne pas (alors que sous Opera et meme sous IE sa fonctionne parfaitement). Existerait-il donc une parade pour que celà fonctionne ?


Voici mon code:
function cacheId(divId)
{
  the_check = document.getElementById(divId).style.display;

  if(the_check)
  {
    document.getElementById(divId).style.display='';
    document.getElementById('collapse').style.display='';
    document.getElementById('explode').style.display='none';
    document.getElementById('droite').style.width='640';
  }
  else
  {
    document.getElementById(divId).style.display='none';
    document.getElementById('collapse').style.display='none';
    document.getElementById('explode').style.display='';
    document.getElementById('droite').style.width='800';
  }	
}


Merci de votre aide !!

4 réponses

Shibo_Sources Messages postés 18 Date d'inscription dimanche 2 janvier 2005 Statut Membre Dernière intervention 3 août 2008
7 mars 2006 à 19:54
Bonjour,
J'ai retravaillé sur le problème cette journée (n'ayant pas le web j'avais du temps à perdre).

Le problème portait (car résolut) uniquement sur style.width, tout le reste est fonctionelle.

J'ai oublié de vous fornir un exemple pour voir la situation: http://www.jeanmariethiebaud.com/web/filter

J'ai aussi oublié de vous expliquer 2, 3 choses:
J'avais un théme entièrement fait avec des div's mais lorseque j'ai rajouter le calendrier que j'ai codé j'ai rencontré des problèmes avec les infobulls. Seul solution: créer un tableau de 2 cases, l'une pour le menu, l'autre pour le contenu des modules. Les cases n'avaient pas d'attribut width.

Dans mon script, droite est un div, en l'occurence c'est le div qui affiche le contenu du modules (donc la 'case' de droite). Collapse et Explode sont deux div's qui servent à changer l'icone '<' en une icone '>' et inversément en fonction de l'état d'affichage du menu.

=> Pour résoudre le problème:
J'ai supprimé l'attribut width des div's. J'ai ensuite mis l'attribut width dans le style des balises td. Ensuite, quand on click pour cacher le menu celà change le style.width des celulles et non plus des div's. Si surprenant que cela puisse paraître, sa fonctionne . . .

Ce problème est vraiment surprenant ...

Merci tout de même de votre aide!
3
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
7 mars 2006 à 07:49
Bonjour,

function cacheId(divId)
{
if( document.getElementById(divId).style.display != "block" )
{
document.getElementById(divId).style.display='block';
document.getElementById('collapse').style.display='block';
document.getElementById('explode').style.display='none';
document.getElementById('droite').style.width='640';
}
else
{
document.getElementById(divId).style.display='none';
document.getElementById('collapse').style.display='none';
document.getElementById('explode').style.display='block';
document.getElementById('droite').style.width='800';
}
}

peut-être ? ( ou inline )
Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>

</FO>
</S< body>
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
7 mars 2006 à 07:53
j'ai mal lu ? le problème est sur style.width ?
quoi que c'est comme balise "droite" ?
Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>
0
Mindiell Messages postés 558 Date d'inscription jeudi 25 juillet 2002 Statut Membre Dernière intervention 5 septembre 2007 1
7 mars 2006 à 10:13
Lorsque tu mets display = 'none'; normalement le calque n'est plus pris en compte. Ton calque central ne devrait pas avoir besoin d'être retaillé...
0
Rejoignez-nous