2010-10-12 29 views
43

He cargado un archivo css en el servidor, así que estoy teniendo una URL conmigo. ¿Cómo puedo cargarlo en mi código perl usando JQuery?Cómo cargar CSS usando jquery

Así Actualmente estoy codificando el css en mi página de albañil, que no se encuentra en la página de algo como esto

JQ.onReady('show', function(){ 
    JQ.addStyles({styles: ["\n\n.ap_classic { border-top:1px solid #ccc;border-left:1px solid #ccc;border-bottom:1px solid #2F2F1D; border-right:1px solid #2F2F1D;background-color:#EFEDD4;padding:3px; } .ap_classic .ap_titlebar { color:#86875D;font-size:12px;padding:0 0 3px 0;line-height:1em; } .ap_classic .ap_close { float:right; } .ap_classic .ap_content { clear:both;background-color:white;border:1px solid #ACA976;padding:8px;font-size:11px; } "]}); 
}); 

quiero evitar hardcoding este css?

+1

¿Por qué se tiene que ser jQuery? ¿Por qué no simplemente generar un 'link rel =' en la cabeza? –

+0

No estoy seguro de lo que quiere decir con cargarlo en su código perl, ¿desea modificar el archivo? ¿O simplemente solo mostrarlo en la página? Si es el último, intentaré cargarlo desde perl/html. – Marko

+3

posible duplicado de [Cargar hojas de estilo externas a petición?] (Http://stackoverflow.com/questions/2126238/load-external-stylesheets-on-request) –

Respuesta

68

que no entiendo por qué no puede simplemente insertar el elemento <link/> en la sección <head/>, pero aquí es un fragmento de jQuery:

$('head').append($('<link rel="stylesheet" type="text/css" />').attr('href', 'your stylesheet url')); 
+0

Estoy teniendo una página de albañil. Así que no es una página html donde puedo establecer encabezados. – TopCoder

+0

Estaba intentando lo mismo ... Pero IE versión 8 no carga el CSS cargado usando este método. – Rohan210

+6

document.createStyleSheet ('style.css'); IE FIX – Rohan210

32

De nuevo, como por Dynamically loading css stylesheet doesn't work on IE.

Es necesario configurar el attr href pasado y sólo después de que el elem enlace se añade a la cabeza:

$('<link>') 
    .appendTo('head') 
    .attr({ 
     type: 'text/css', 
     rel: 'stylesheet', 
     href: '/css/your_css_file.css' 
    }); 
+2

.appendTo ('head') también funciona para mí – Sergey

+0

Doh, ¡por supuesto que sí! Debo haber estado dormido cuando codifiqué eso. Gran enmienda Sergey :) – ekerner

Cuestiones relacionadas