¿Quieres registrarte?

Texto con enlaces en Flash al estilo HTML

Por: Zguillez
8 de Enero del 2007
7273 de clabLevel
Otros artículos de Zguillez
35,316 visitas

En flash podemos colocar textos en formato HTML con enlaces a otras páginas, pero tenemos el problema de que estos links no quedan resaltados en color azul y subrayados como pasa en un típico HTML.

Por ejemplo, este SWF contiene un campo de texto con varios enlaces, pero no se diferencian del resto del texto:



Esto lo podemos solucionar aplicando un poco de CSS al texto HTML.
El código para crear el estilo CSS sería este:

Código :

import TextField.StyleSheet;
var css:StyleSheet = new StyleSheet();
css.parseCSS("a{color:#0000FF; text-decoration:underline;}");

Ahora al crear un texto HTML tendremos que aplicarle el CSS, de esta manera aplicamos a todas las etiquetas <a> el color azul y el subrayado:

Código :

texto.html = true;
texto.styleSheet = css;
texto.htmlText = "<a href='http://www.cristalab.com'>Troiae</a> qui primus ab oris Italiam, fato profugus, Laviniaque venit litora, multum ille et terris iactatus et alto vi superum saevae <a href='http://www.cristalab.com'>memorem</a> Iunonis ob iram; multa quoque et bello passus, dum conderet urbem, inferretque deos Latio, genus unde Latinum, <a href='http://www.cristalab.com'>Albanique</a> patres, atque altae moenia Romae.";

El resultado sería este:



Para mejorar este código y hacerlo más reutilizable, podemos meterlo a través de prototype a la clase TextField:

Código :

TextField.prototype.htmlcss = function(txt:String)
{
   import TextField.StyleSheet;
   var css:StyleSheet = new StyleSheet();
   css.parseCSS("a{color:#0000FF; text-decoration:underline;}");
   this.html = true;
   this.styleSheet = css;
   this.htmlText = txt;
};

De esta manera TODOS los campos de texto tendrán el comportamiento htmlcss que colocará el estilo al texto.

Para añadir el texto al campo de texto utilizaremos esta nueva función de la clase:

Código :

texto.htmlcss("<a href='http://www.cristalab.com'>Troiae</a> qui primus ab oris Italiam, fato profugus, Laviniaque venit litora, multum ille et terris iactatus et alto vi superum saevae <a href='http://www.cristalab.com'>memorem</a> Iunonis ob iram; multa quoque et bello passus, dum conderet urbem, inferretque deos Latio, genus unde Latinum, <a href='http://www.cristalab.com'>Albanique</a> patres, atque altae moenia Romae.");

Enviar a twitter Enviar a facebook

Etiquetas

Comentarios | Enviar un comentario
muy práctico Zguillez. resaltar de un parrafo de texto los links es una buena práctica que hace a la usablilidad del sitio y a la legibilidad de la información. ^^
Por: Mariux
Muy bueno (Y)
Pd: No vendría mal un tag "usabilidad" para la sección de tips.
Por: Zah
Excelente tip, cuando empecé con flash siempre me preguntaba como se hacía XD
Por: La100rra
Muy bueno, ahora veeo que ya con AS3 , y veo que empeieza a ser facil cunado te acostumbras a usarlo. XD
Por: nashCode
Excelente. Gracias.

PS. No se olviden de visitar Troiae, memorem y Albanique. :lol:
Por: Norke
mmm, pero si quiero tener links de varios colores, y con rollover????
la única solución viable, es tener el rollover(hover) de un solo color, de otra manera NO :(
Por: ramiro_olver@
Muy práctico. Y también añadiría que es mejor importar los estilos con un css externo, ya que seguramente que se querrán definir más estilos, como el título o otras cosas. :)
Por: Sisco
realmente muy util.
... es para as2 o as3 ??
Por: eveevans_blog

eveevans_blog :

realmente muy util.
... es para as2 o as3 ??

as2
Por: Zguillez
necesito hacer un link a otra pelicuala flash y el action geturl me marca un error seguro esta incompleto, alquienpuede ayudarme
Por: jessica_blog
Pregunta: el fondo degradado de CL es neta programación o una img solamente?... si es programación, puede ser explicada please?.. gracias.
Por: Rocky_blog
que puedo hacer si lo tengo desde un texto dinamico? como puedo hacer para que me aparezcan los links? todo llega desde una bd de mysql utilizando php
Por: HaR1m_blog

HaR1m_blog :

que puedo hacer si lo tengo desde un texto dinamico? como puedo hacer para que me aparezcan los links? todo llega desde una bd de mysql utilizando php
únicamente has de hacer que el texto guardado en la bd esté en formato html (con las etiquetas <a> puestas)
Por: Zguillez
muy bueno, pero a mi me interesaria hacerlo dentro de flash, osea se puede por ej darle alguna accion a esos links algo como q el txt desaparezca o no se pero la idea es hacerlo dentro de flash
Por: nahaliel
Como hago para leyendo de un archivo de texto , a una palabra hacerle link a otra parte del txt.Por favor ayudenme
Por: EclipseBit_blog
Está muy bueno, pero tengo un problema con la etiqueta <img>.
Tengo la siguiente instrucción:

txt = "TXT1 <img src='Comillas2' vspace='0' hspace='1' width='10' height='7'></img> TXT2."

Y el problema es que en vez de aparecer la imagen entre los textos me aparece debajo de los mismos como si ubiese ejecutado la siguiente instrucción:

txt = "TXT1 TXT2.<br><img src='Comillas2' vspace='0' hspace='1' width='10' height='7'></img>"

Alguien sabe por que no incorpora la imagen entre los textos?
Por: Mariano_blog
emm..

no entendiii

nada

bueno

chau
Por: __.~ dàlm_* .-._blog
quiero que un boton flash abra una pajina web
Por: anubis_fco_blog
quisiera que alguien me allude porfa como llamar un texto html que lo guardo en word a que me lo lea en flash como lo deberia hecer gracias
Por: juan francisco lópez_blog
Bueno la verdad quiero saber como hacer un boton en flash y que ese boton tenga links para poder abrir otras ventanas

ok........
Por: Alxpo_blog
quisiera saber los comandos para insertar botones menus banner de flash en un codigo html
Por: jhon_blog
Hola mi pregunta es:

Si tengo un texto dinamico en flash y quiero hacerque una palbra aparezca en negrita o cursiva como puedo hacer
?

gracias
Por: adrian_blog

adrian_blog :

Hola mi pregunta es:

Si tengo un texto dinamico en flash y quiero hacerque una palbra aparezca en negrita o cursiva como puedo hacer
?

gracias

Para hacer eso solo tienes que colocarle las etiquetas bold <b></b> o italic <i></i> al texto html.
Por: Zguillez
no puedo ver los swf, no los carga T_T
Por: ph_blog

ph_blog :

no puedo ver los swf, no los carga T_T

Arreglado! :swat:
Por: Zguillez
hola me parese super
Por: omar_blog
mmmmmmmmm la verdad no se nada de esto porfa ayudadme
Por: carlos_blog
Exelente muchas gracias
Por: Aletodi
excelente código gracias...
Por: Oscar Alzate_blog
Me parece buen tip sobre todo para las novatas como yop
Por: Diana-blog
tengo una pregunta.... estoy haciendo una pagina (de echo es la primera) y los hice con animaciones en flash pero cuando carga el índex y pasa de una pagina a otra aparecen los swf como cuadros blancos cual es tu consejo?
Por: Laura-blog
Deja un comentario
IMPORTANTE

Recuerda ser respetuoso, no insultes a otras personas, ni uses palabrotas, hay una persona al otro lado de la pantalla.

Habla bien, NO ESCRIBAS EN MAYUSCULA TODO, no escribas como en un SMS, evita cosas como "ke", "x q" y demás abreviaciones.

Aquí funcionan las etiquetas de los foros, puedes usar [b] para negrita, [img] para las imágenes, [url] para los enlaces, etc.

Si tienes preguntas técnicas, envíalas mejor al foro.