login
Inicia sessió

register
Registra't

El blog del Dani

Style.visibility is not a valid property

IE mai deixarà de sorprendre'm.

Ja està arreglat el mític error que feia que no es pugueren registrar des de IE6 o IE7 perquè el llistat de poblacions no es desplegava.

Resulta que era un error de javascript amb la propietat visibility que oculta capes; no funciona bé amb inherit i destrueix la propietat si s'iguala a inherit. La solució és per a IE igualar a valor nul la propietat.

Implementació anterior:

function hidediv(d) { var div=$__(d); if(!div) return false; div.style.visibility="hidden"; div.style.display="none"; }
function showdiv(d) { var div=$__(d); if(!div) return false; div.style.visibility="visible"; div.style.display="inherit"; }

Implementació parxada per a IE:

function hidediv(d) { try { var div=$__(d); if(!div) return false; div.style.visibility="hidden"; div.style.display="none"; } catch(err) { } }
function showdiv(d) { try { var div=$__(d); if(!div) return false; div.style.visibility="visible"; div.style.display=(IE?'':"inherit"); } catch(err) { } }

Funcions auxiliars:

var IE=document.all?true:false;
function gte(id) { return document.getElementById(id); }
function $__(e){if(typeof e=='string') return gte(e); return e};

D'altra banda l'error estava bé, perquè evitava que tota l'escòria que encara usa ie6 o ie7 es registrara a la xarxa :P

Comentaris (3)01-02-2011 23:40:21Programació

Miquelet_1707, 01-02-2011 23:43:46

Sort! Que volia ajuda una bella donzella i has pogut vore l'error... com era això? Actualitza la pàgina XDDD

thor9216thor9216 blog, 01-02-2011 23:44:29

xDDDD

danioldaniol blog, 01-02-2011 23:48:49

La solució era que es canviaren de navegador, en realitat és la millor, més normal i més raonable solució.

Escriu un nou comentari:

Comentari extern

Nom:


Registrar-me a flog.cat

Usuaris registrats

Usuari de flog.cat:

Contrasenya: