estoy tratando de utilizar jQuery
para dar formato a los bloques de código, específicamente para agregar una etiqueta dentro de la etiqueta <pre>
<code>
:¿Cómo agrego una etiqueta previa dentro de una etiqueta de código con jQuery?
$(document).ready(function() {
$("code").wrapInner("<pre></pre>");
});
Firefox aplica el formato correctamente, pero IE pone el bloque de código en una sola línea. Si añado una alerta
alert($("code").html());
veo que IE ha insertado un texto adicional en la etiqueta pre:
<PRE jQuery1218834632572="null">
Si vuelvo a cargar la página, el siguiente número de cambios de jQuery.
Si uso wrap()
en lugar de wrapInner()
, para envolver el <pre>
fuera de la etiqueta <code>
, tanto en IE y Firefox manejan correctamente. ¿Pero no debería <pre>
trabajar dentro de<code>
también?
preferiría utilizar wrapInner()
porque entonces puedo agregar una clase CSS para la etiqueta <pre>
para manejar todo el formato, pero si uso wrap()
, tengo que poner CSS formato de página en la etiqueta <pre>
y formato de texto/font en la etiqueta <code>
, o Firefox e IE ambos se ahogan. No es un gran problema, pero me gustaría mantenerlo lo más simple posible.
¿Alguien más ha encontrado esto? ¿Me estoy perdiendo de algo?
El uso de la etiqueta de código podría ser excusado por ser mucho más semántica - no es que hace que sea correcta. – nickf