actionscript 3 - tinyMCE a AS3 htmlText
actionscript-3 (2)
Primero agregue lo siguiente a su configuración (esto debería resultar en el uso de etiquetas b en lugar de fuerte para negrita):
tinyMCE.init({
...
formats : {
...
bold : {inline : ''b''},
...
});
Debe escribir un plugin propio con la funcionalidad para reemplazar sus tramos (usando jQuery). El código relevante debería ser similar a esto:
iframe_id = (ed.id == ''content_ifr'') ? ed.id : ed.id+''_ifr'';
spans = document.getElementById(iframe_id).document.getElementsByTagName(''span'');
for (i=0;i<spans.length;i++){
with(document.getElementById(iframe_id).contentWindow){
var font=document.createElement("font");
font.innerHTML = span[i].innerHTML;
font.size = $(span[i]).attr(''font-size'');
font.color = $(span[i]).attr(''color'');
span[i].parentNode.replaceChild(font, span[i]);
}
}
Estoy usando tinyMCE para editar / marcar texto en un backend de Zend Framework. Me gustaría usar el HTML generado en una aplicación Flash AS3. El problema es que Flash no admite atributos en <span>
''s, <em>
etiquetas, <strong>
etiquetas, etc. Supongo que hay dos posibilidades aquí:
- cambie la configuración de tinyMCE para que use font-tags en lugar de span''s,
<b>
lugar de<strong>
, ... - Reemplace todas las etiquetas HTML en Flash con Regex.
Cualquier ayuda sera bienvenida.
entonces este es el html original generado por tinyMCE:
<span style="color:#FF0000; font-size:24;">text, and <strong>bold text</strong></span>
Y esto es lo que necesito en Flash:
<font size=''24'' color=''#FF0000''>text and <b>bold text</b></font>
Gracias por la respuesta, pero encontré una solución muy simple. TinyMCE viene con un complemento llamado: legacyoutput . Esto generará código HTML de la vieja escuela que se puede leer en Flash.
como usar esto:
- agrega legacyoutput a tus complementos en la función de inicio tinyMCE
- agregue la siguiente regla a su función de inicio tinyMCE: extended_valid_elements: ''b, i''
Ahora su HTML se verá así:
<font size="12" style="color:#FF0000"><b>text in bold 14pt red</b></font>
El atributo de estilo debe reemplazarse por un atributo de color para que sea legible en Flash. Puede solucionarlo editando una regla en los archivos js de salida heredada (tinymce / plugins / legacyoutput / editor_plugin.js y editor_plugin_src.js):
busque "forecolor" y cambie el código a lo siguiente:
forecolor : {inline : ''font'', attributes : {color : ''%value''}},
Ahora puedes sacar esto en Flash sin usar un solo truco.