2010-11-18 33 views
7

Uso bastante el Javascript en línea, generalmente en temas de WordPress que hago. No había escuchado sobre el ajuste de Javascript en línea en //<![CDATA[ ... //]]> hasta hace unos meses, y he estado haciendo esto en un nivel justo de competencia durante algunos años.¿Es realmente necesario CDATA?

Busqué en Google y escuché que la gente usa esto porque su Javascript no valida lo contrario. Utilizo un estricto doctype 1.0 xHTML y nunca tuve problemas para validar mi marcado. ¿Es porque uso jquery, o porque generalmente solo tengo unas pocas líneas de código para activar un complemento? ¿O el validador de w3 es indulgente a este respecto? ¿Hay alguna evidencia de impacto funcional cuando no se utilizan estas marcas CDATA?

+0

Por ejemplo, creo que algunos programas de análisis pueden tropezar con la menor que y signos de mayor que (< and >) en JavaScript código que no está en una sección CDATA. –

+2

Esto parece ser un duplicado de http://stackoverflow.com/questions/66837/when-is-a-cdata-section-necessary-within-a-script-tag. Hay algunas buenas respuestas allí. –

+0

@Gintautas - los analizadores * deberían * tropezar con ellos, entre otras cosas. La respuesta de Jost es buena. – Quentin

Respuesta

0

Creo que está destinado a usarlo para cumplir con XHTML Strict. de lo contrario, el JavaScript no sería XML válido.

4

Hoy solo es realmente necesario si desea que su documento XHTML sea válido. p.ej. algo tan simple como esto no es válido debido a las <p> etiquetas en el código JavaScript con el CDATA valida

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml" lang="en"> 
<head> 
    <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
    <title>foo</title> 
    <script type="text/javascript"> 
    alert("<p>Hallo</p>"); 
    </script> 
</head> 
<body> 
</body> 
</html> 
+1

Ah, está bien, entonces es el contenido del script en línea el que decide si la página está validada o no, es bueno saberlo. Creo que voy a comenzar a vincular mis cosas externamente, aunque solo sea una llamada a algunos complementos, parece más limpio de esta manera. Gracias por la respuesta rápida (¡Guau!) – Daniel

Cuestiones relacionadas