Deze functie bewaart ook verborgen inhoud.
function remove_style(all) ( var i = all.length; var j, is_hidden; // Presentational attributes. var attr = ( 'align', 'background', 'bgcolor', 'border', 'cellpadding', 'cellspacing', 'color', 'face', 'height', 'hspace', 'marginheight', 'marginwidth', 'noshade', 'nowrap', 'valign', 'vspace', 'width', 'vlink', 'alink', 'text', 'link', 'frame', 'frameborder', 'clear', 'scrolling', 'style' ); var attr_len = attr.length; while (i--) ( is_hidden = (all(i).style.display === 'none'); j = attr_len; while (j--) ( all(i).removeAttribute(attr(j)); ) // Re-hide display:none elements, // so they can be toggled via JS. if (is_hidden) ( all(i).style.display = 'none'; is_hidden = false; ) ) )
Gebruik
Roep de functie als volgt aan:
var all = document.getElementsByTagName('*'); remove_style(all);
Opmerking: het selecteren van alle elementen op de pagina via een zoekopdracht met jokertekens kan traag zijn, afhankelijk van het aantal elementen op de pagina. Je zou een kleinere set elementen kunnen gebruiken om beter te presteren:
var set = document.getElementById('foo').getElementsByTagName('bar'); remove_style(set);
Code door Nathan Smith.