cs_Nathbest
Messages postés9Date d'inscriptionvendredi 4 octobre 2002StatutMembreDernière intervention18 juillet 2008
-
5 mars 2008 à 23:32
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 2011
-
7 mars 2008 à 12:49
Bonjour à tous, alors voici mon problème:
J'ai un système de boite flotante qui s'affiche à moitié caché sur la gauche, puis losque l'on passe la souris la boite glisse vers la droite pour s'afficher en entier, puis lorsque l'on clique à l'intérieur de la boite flotante, la boite se recache à moitié en repartant sur la gauche.
Donc premièrement, ce CODE, affiché plus bas, fonctionne parfaitement sur FireFox et Internet Explorer 7,
mais le problème est que une fois que j'y ajoute toute la déco de mon site (div, bloc, texte, etc...) bin ce système de boite ne fonctionne plus que sur Internet Explorer...
Firefox affiche bien la boite caché mais le système de glissade pour l'ouverture ne fonctionne pas, puis lorsque je clique sur la boite, la boite ne se referme pas!
Donc voilà mon CODE, je ne sais pas si c'est ma programmation qui est mauvaise mais bon, je compte sur vous...
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 6 mars 2008 à 09:57
Bonjour,
tel que tu nous donnes les choses....
..
var p= -135;
if (internet_explorer4||netscape6){
document.getElementById("menuderoulant").style.left=p;
est fait avant que menuderoulant ne soit créé !
ça plante ( ie et ff )
}
else ...
ensuite :
>>Donc premièrement, ce CODE, affiché plus bas, fonctionne parfaitement sur FireFox et Internet Explorer 7,
à la restriction ci-dessus près non ?
>>mais
le problème est que une fois que j'y ajoute toute la déco de mon site
(div, bloc, texte, etc...)
>>bin ce système de boite ne fonctionne plus
que sur Internet Explorer...
certes... mais nous on ne la pas ce que tu ajoutes !
il y a donc probablement quelque chose qui perturbe FF !
en l'état actuel, je ne peux que te dire :
¡————————¡——————————————————————————————————————————————————————————¡
|FireFox |regarder la "console d'erreurs" |
| | Outils / Console d'erreurs |
| | |
| | et mieux, télécharger FireBug |
¦————————¦——————————————————————————————————————————————————————————¦
|Internet|activer le deboggage : Outils/options Internet/Avancés |
|Explorer| dans la liste, sous "Navigation" : décocher |
| | ° Afficher une notification de chaque erreur de script |
| | ° Désactiver le débogage de Scripts (Internet Explorer) |
| | |
| | et mieux, télécharger =2f465be0-94fd-4569-b3c4-dffdf19ccd99&displaylang=en le Debogger IE |
¦————————¦——————————————————————————————————————————————————————————¦
|K—Meleon|regarder la "console d'erreurs" |
| | Outils / Console d'erreurs |
¦————————¦——————————————————————————————————————————————————————————¦
|Opera |regarder la "console d'erreurs" |
| | utils / Asole d'erreurs |
¦————————¦——————————————————————————————————————————————————————————¦
|Safari |regarder Debug / Show JavaScript Console |
| | |
| |modif Fichier "Support:\Documents and Settings\utilisateur|
| |\Application Data\Apple Computer\Safari\Preferences.plist"|
| | y ajouter <key>IncludeDebugMenu</key> |
| | <true/> |
!————————!——————————————————————————————————————————————————————————!
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 201117 7 mars 2008 à 12:49
Bonjour,
1/ Attention la position
fixed n'est pas prise en compte par IE < 7, encore très présent, peut être
lui préférer la position absolute...
2/ Beaucoup de référence à
NetScape 4, notion de layers, il te faut les supprimer pour
clarifier ton code...
3/ Il est également nécessaire de détruire le
Timeout en cours pour éviter des effets d' aller/retour hésitants sur des move
de la souris...
Ton script se résumerait à ceci
<script type= "text/javascript">
<!-- fonction Menu déroulant gauche -->
var p =-135;
var iTimer = null;
function h_open(){
clearTimeout( iTimer);
document.getElementById("menuderoulant").style.left = p +"px";
if(p < 0){
p=p+5;
iTimer = setTimeout("h_open()",1);
}
}
function h_close(){
clearTimeout( iTimer);
document.getElementById("menuderoulant").style.left = p +"px";
if(p > -135){
p=p-5;
iTimer = setTimeout("h_close()",1);
}
}
</script>
et
idem dans la partie
...toutes les remarques faites ci avant restant valables...
;O)