Home » AS3 »Trucos » Currently Reading:

Ejecutar acciones actionscript en enlaces de texto con AS3

febrero 26, 2007 AS3, Trucos 3 Comments
Ejecutar acciones actionscript en enlaces de texto con AS3

En AS3 es posible, de forma fácil, ejecutar acciones actionscript cuando el usuario clica sobre un enlace dentro de un campo de texto HTML de nuestra web. Esto lo conseguimos gracias al protocolo de detección de eventos de AS3.

Por ejemplo, este sería la forma típica de añadir un enlace externo a un campo de texto dinámico:

  1. texto.htmlText = "Troiae qui <a href='http://www.cristalab.com'>primus</a> ab oris Italiam, fato profugus, Laviniaque venit litora, multum ille et terris iactatus et alto vi superum saevae memorem Iunonis ob iram."

Utilizando un detector de eventos lo haríamos de esta manera:

  1. texto.htmlText = "Troiae qui <a href='event:http://www.cristalab.com'>primus</a> ab oris Italiam, fato profugus, Laviniaque venit litora, multum ille et terris iactatus et alto vi superum saevae memorem Iunonis ob iram"

De manera que no estamos abriendo una URL con el enlace sino que estamos lanzando un evento.

Ahora crearemos un listener que detecte ese evento y ejecute la acción de abrir la URL:

  1. texto.addEventListener(TextEvent.LINK,clica);
  2. function clica(event:TextEvent){
  3.     var url:String = event.text;
  4.     navigateToURL(new URLRequest(url));
  5. }

De esta manera podemos añadir a esta función las acciones que nos interesen:

  1. texto.addEventListener(TextEvent.LINK,clica);
  2. function clica(event:TextEvent){
  3.     var url:String = event.text;
  4.     navigateToURL(new URLRequest(url));
  5.     ejecuta_accion();
  6. }

Tambien podemos utilizar los enlaces del texto HTML para ejecutar acciones actionscript dentro de nuestra pelicula flash:

  1. texto.htmlText = "Troiae qui <a href='event:1'>primus</a> ab oris Italiam, fato <a href='event:2'>profugus</a>, Laviniaque venit litora, multum ille et terris <a href='event:3'>iactatus</a> et alto vi superum saevae memorem Iunonis ob iram"
  2. texto.addEventListener(TextEvent.LINK,clica);
  3. function clica(event:TextEvent){
  4.     var accion:Number = event.text;
  5.     switch (accion) {
  6.     case 1 :
  7.         ejecuta_accion();
  8.         break;
  9.     case 2 :
  10.         ejecuta_otra_accion();
  11.         break;
  12.     case 3 :
  13.         ejecuta_otra_accion_mas();
  14.         break;
  15.     }
  16. }

Compártelo:

Ejecutar acciones actionscript en enlaces de texto con AS3
Visto 24.550 veces

Currently there are "3 comments" on this Article:

  1. Alx dice:

    Un gran articulo, precisamente necesitaba algo como esto para seguir con la animación en la que se utiliza texto en formato HTML dentro de Flash pero que no queria que me abriera otra ventana sino simplemente ejecutara una accion como desplazarse en la linea del tiempo.

    Muchas gracias!!

  2. ceaped dice:

    Hola
    Seguí el tutorial de la última opción para cargar:

    ‘enlaces del texto HTML para ejecutar acciones actionscript dentro de nuestra pelicula flash’

    Pero me lanza este erro:

    1067: Implicit coercion of a value of type String to an unrelated type Number.

    Me pueden indicar que debo agregar o corregir.

    gracias por su ayuda

  3. […] días Seguí un tutorial de http://www.codigoactionscript.org/ej…#comment-26863 Pero este código me da un error: cita: 1067: implicit coercion of a value of type string to an […]

Comment on this Article:








Twitter: zguillez

AdvertisementAdvertisementAdvertisementAdvertisement

Recibe las novedades por email



Map

Ranking

Codigoactionscript.org: 4.65 sobre 5 (106 valoraciones)

twitter-widget.com