Salut
Pour parer au bug connu d'IE où les select passent par dessus les calques, j'ai fais une petite fonction qui cache mon select quand le calque s'affiche.
Ca fonctionne mais comme ce bug n'existe pas sur IE7 et les autres navigateur, je trouve ca plus propre de n'executer que cette fonction sur IE6 et -.
Voilà comment je procède :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| <!--[if lt IE 6]>
<script type="text/javascript">
function cachepays() {
if ((document.getElementById("LSResultcp").style.display == "block") || (document.getElementById("LSResultville").style.display == "block")) {
document.getElementById("pays").style.visibility = "hidden";
} else {
document.getElementById("pays").style.visibility = "visible";
}
}
</script>
<![endif]-->
<!--[if gte IE 7]> <-->
<script type="text/javascript">
function cachepays() {
x = "hello";
}
</script>
<!--> <![endif]--> |
Appel de la fonction :
<body onload="liveSearchInit();setInterval('zonepays(document.getElementById(\'pays\').value)',100);setInterval('cachepays()',100);">
Le problème c'est que ca me fait une erreur de script sous IE6 et ca ne fonctionne pas. Sous FF et IE7 ca ne semble pas le gêner et il ne me trouve pas d'erreur.
Voilà le lien : http://www.magnificat.com/junior/abo1.asp
Il faut cliquer sur "suite" pour arriver à la bonne page. Mon code se passe au niveau des champs cp, ville et pays.
Quelqu'un voit où je me suis trompée ?
Sinon existe-t-il une autre méthode ?
Merci
Partager