actionscript-3 tinymce htmltext

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.