2012-06-11 10 views
5

Pensé que esto podría ser posible solo con jQuery o JavaScript. ¿Podría alguien decirme si es posible desvanecerse de estilos de una hoja de estilo a otra? Si es así, ¿cómo lo haría?Fundido de una hoja de estilo a la otra

¡Gracias!

+0

posible duplicado de [cambio automático de la hoja de estilos de jquery] (http://stackoverflow.com/questions/1266275/automatic-jquery-stylesheet-switcher) –

+0

Puedo ver por qué esto tiene un voto negativo, pero al pensarlo, en realidad es un idea bastante ordenada y flexible. Algunos sintetizadores tienen la idea de escenas. Un conjunto de configuraciones con valores numéricos, puede realizar la transición a voluntad entre escenas a una velocidad definida por el usuario. La capacidad de transición de valores numéricos entre hojas de estilo se vería increíble. Tendría que ser un script personalizado, aunque creo. –

+0

Si bien puede intercambiar hojas de estilo, no existe el concepto de animar entre las dos. Tendría que configurarlo manualmente a través de JS. –

Respuesta

3

Esta es la mejor manera que se me ocurre:

$(body).fadeOut(function() { 
    // Switch the stylesheet 
    // And then: 
    $(this).fadeIn(); 
}); 
+0

Gracias. Usaré esto como una solución permanente. Pero, ¿hay alguna forma de desvanecerse directamente entre las dos hojas de estilo? –

+0

No, nada puede calcular todas las reglas de todas las hojas de estilo. Si hubiera, sería demasiado computativo usarlo. –

+0

Lo habría pensado así. Este fragmento de código también es genial. Agregará un buen toque a mi aplicación. –

0

Puede usar jquery animate. Pero tendría que especificar todas las reglas en el comando animado.

2

Prueba esto:

jQuery:

$(document).ready(function() { 
    $("a").click(function() { 
     var rel = $(this).attr("rel"); 
     $('body').hide().fadeIn(1000); 
     $('head').append('<link rel="stylesheet" href="'+rel+'" type="text/css" />'); 
    }); 

}); 

HTML:

<ul> 
    <li><a href="#" rel="layout.css">Change to layout 1</a></li> 
    <li><a href="#" rel="layout2.css">Change to layout 2</a></li> 
    <li><a href="#" rel="layout3.css">Change to layout 3</a></li> 
</ul> 

Saludos

Cuestiones relacionadas