jueves, 13 de mayo de 2010

Cambiar hoja de estilos sin refrescar

Para poder cambiar la hoja de estilo lo primero es indica varias hojas de estilos alternitivas, para se una hoja de estilo alternativa debe tener un title y el atributo rel="stylesheet"


<link href="css/estilos.css" rel="stylesheet" type="text/css"/>
<link href="css/blanco.css" rel="stylesheet" type="text/css" title="hojaBlanco"/>
<link href="css/negro.css" rel="stylesheet" type="text/css" title="hojaNegro"/>

Después tenemos que llamar a la función activarCSS

<a href="#" onClick="activarCSS('hojaBlanco');return false" id="btnBlanco">

En el javascript se debe incluir la función activarCSS

function activarCSS(title) {
var i, a, main;
for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
a.disabled = true;
if(a.getAttribute("title") == title) a.disabled = false;
}
}
return false;
}