Trop habitué à utiliser jQuery et son $( »).css(‘style’) ou autre $( »).is(‘:visible’), je me suis trouvé bien bête à retrouver si ma div était en display: block ou display: none…
Bien sûr, j’avais essayé de faire
document.getElementById('monelement').style.display
mais ça ne fonctionne que si le display a été modifié directement sur l’élément ou via js.
Mais comment faire quand ce style est rajouté par un fichier CSS ?
Internet Explorer (l’exception, encore une fois) utilise l’attribut currentStyle d’un élément du DOM, alors que les autres utilisent
var elementDisplay =
element.currentStyle ?
element.currentStyle.display :
window.getComputedStyle(element, null).display;
element.currentStyle ?
element.currentStyle.display :
window.getComputedStyle(element, null).display;
Plus d’infos sur getComputedStyle. Le null est indispensable pour firefox apparemment