Foros del Web » Creando para Internet » Flash y Actionscript »

submenus con url

Estas en el tema de submenus con url en el foro de Flash y Actionscript en Foros del Web. Hola, estuve buscando por internet como hacer para colocarle url a los submenu pero no encontre. Lo que estoy buscando es que al apretar en ...
  #1 (permalink)  
Antiguo 28/06/2010, 10:45
 
Fecha de Ingreso: junio-2010
Mensajes: 36
Antigüedad: 13 años, 10 meses
Puntos: 0
submenus con url

Hola, estuve buscando por internet como hacer para colocarle url a los submenu pero no encontre. Lo que estoy buscando es que al apretar en cada submenu te lleve a una url deferente. El texto de los submenus lo carge por un xml.
Agradeceria si alguien me pudiera ayudar con este problema.
  #2 (permalink)  
Antiguo 28/06/2010, 11:41
Avatar de Lynxcraft  
Fecha de Ingreso: noviembre-2007
Ubicación: yecla murcia
Mensajes: 1.346
Antigüedad: 16 años, 5 meses
Puntos: 51
Respuesta: submenus con url

esto es algo de spam espero que me perdonen XDXD

tal ves este menú te sirva

ejemplo

http://crea-flash.com/shop/example/?type=flash&ej=sMenu

descarga
http://crea-flash.com/shop/smenu-flash-as3.html
__________________
Sobran las ideas cuando faltan ganas de trabajar en ellas
Lynxcraft

Última edición por Lynxcraft; 28/06/2010 a las 13:35
  #3 (permalink)  
Antiguo 28/06/2010, 14:42
 
Fecha de Ingreso: junio-2010
Mensajes: 9
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: submenus con url

Prueba con esto en tu xml

Código:
<item>
            <label>texto de tu submenu </label>
            <linkTo>link donde quieres que vaya al apretar</linkTo>
        </item>
Saludos
  #4 (permalink)  
Antiguo 28/06/2010, 17:00
 
Fecha de Ingreso: junio-2010
Mensajes: 9
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: submenus con url

Se me olvidaba la variable <linkTo> tiene que estar definida en el actionscript.
Código:
menuItem.linkTo = item.linkTo;
tienes que definir tambien la funcion al clicar sobre el texto
Código:
menuItem.addEventListener(MouseEvent.CLICK, itemClicked);


function itemClicked(e:Event):void {
 
	var urlRequest:URLRequest=new URLRequest(e.target.linkTo);
	navigateToURL(urlRequest);
 
}
Donde menuItem lo debes cambiar por el nombre que le hayas dado tu al texto de los submenus.
  #5 (permalink)  
Antiguo 28/06/2010, 20:41
 
Fecha de Ingreso: junio-2010
Mensajes: 36
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: submenus con url

gracias relwarc. pero no comprendo tu codigo xml. el mio es de esta manera:
Código XML:
Ver original
  1. </menu>
  2. <menu label="Desarrollo">
  3. <menu label="Sistemas a Medida l"/>
  4. <menu label="Gucci"/>
  5. <menu label="Pantaloon"/>
  6. <menu label="Bombay Daying"/>
  7. <menu label="Pyramid"/>
  8. <menu label="Woodland"/>
  9. </menu>
  10. <menu label="Show Rooms">
  11. <menu label="Jaipur"/>
  12. <menu label="Delhi"/>
  13. <menu label="Mumbai"/>
  14. <menu label="Kolkata"/>
  15. <menu label="Pune"/>
  16. <menu label="Bengalore"/>
  17. <menu label="Indore"/>
  18. <menu label="Pradeep"/>
  19. </menu>

agradeceria si me pudieras dar a entender esto.
  #6 (permalink)  
Antiguo 29/06/2010, 04:09
 
Fecha de Ingreso: junio-2010
Mensajes: 9
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: submenus con url

Necesitaria ver tambien el codigo actionscrip de tu swf para ver como invoca los elementos del submenu.
  #7 (permalink)  
Antiguo 29/06/2010, 06:36
 
Fecha de Ingreso: junio-2010
Mensajes: 36
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: submenus con url

el codigo de action script es de esta manera:

Código ASP:
Ver original
  1. var my_xml:XML = new XML();
  2. my_xml.load("data/menus2.xml");
  3. my_xml.ignoreWhite = true;
  4. var menues:Array = new Array();
  5. var _this = this;
  6. var submenu
  7. my_xml.onLoad = function(success) {
  8.     if (success) {
  9.         //  trace(this)
  10.         menues = this.childNodes;
  11.        
  12.         for (var i = 0; i<menues.length; i++) {
  13.             _this.attachMovie("menu_mc", "menumc_"+i, i);
  14.             _this["menumc_"+i].menutxt.text = menues[i].attributes.label;
  15.             _this["menumc_"+i]._y = 15;
  16.             if (i == 0) {
  17.                 _this["menumc_"+i]._x = 50;
  18.             } else {
  19.                 _this["menumc_"+i]._x = _this["menumc_"+(i-1)]._x+_this["menumc_"+(i-1)]._width;
  20.             }
  21.             _this["menumc_"+i].onRollOver = function() {
  22.                    
  23.                 this.gotoAndPlay(2)
  24.                
  25.                 menu_rollover(this);
  26.             };
  27.             _this["menumc_"+i].onRollOut = function() {
  28.                 menu_rollout(this);
  29.             };
  30.         }
  31.     } else {
  32.         trace("no xml loaded");
  33.     }
  34. };
  35. function menu_rollover(mc) {
  36.     for(var i = 0; i<submenu.length; i++)
  37.         {
  38.             removeMovieClip(_this["submenu_"+i])
  39.         }
  40.     mc.gotoAndStop(2);
  41.     var menu_num = mc._name;
  42.     menu_num = substring(menu_num, menu_num.lastIndexOf("_")+2, menu_num.length);
  43.     submenu = menues[menu_num].childNodes
  44.     for(var i=0; i<submenu.length; i++){
  45.         _this.attachMovie("submenu_mc", "submenu_"+i, i+menues.length);
  46.         _this["submenu_"+i].menutxt2.text = submenu[i].attributes.label;
  47.         _this["submenu_"+i]._y = _this["menumc_"+menu_num]._y+ _this["menumc_"+menu_num]._height+10;
  48.         if(i == 0)
  49.         {
  50.             _this["submenu_"+i]._x = 50
  51.         }else{
  52.             _this["submenu_"+i]._x =_this["submenu_"+(i-1)]._x+ _this["submenu_"+(i-1)]._width
  53.         }
  54.         _this["submenu_"+i].onRollOver = function()
  55.         {
  56.             this.gotoAndStop(2);
  57.         }
  58.         _this["submenu_"+i].onRollOut = function()
  59.         {
  60.             this.gotoAndStop(1);
  61.         }
  62.    
  63.  
  64.     }
  65.    
  66. }
  67. function menu_rollout(mc) {
  68.    
  69.     mc.gotoAndStop(1);


muchas gracias por la ayuda relwarc
  #8 (permalink)  
Antiguo 29/06/2010, 08:18
 
Fecha de Ingreso: junio-2010
Mensajes: 36
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: submenus con url

por las dudas si es de ayuda te digo que el encording del xml es utf-8 y es actionscript 2.0.
Se agradece la ayuda.
  #9 (permalink)  
Antiguo 29/06/2010, 13:41
 
Fecha de Ingreso: junio-2010
Mensajes: 9
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: submenus con url

Prueba a ver si esto te sirve, no controlo mucho as2 empece investigando as3 directamente pero pruebalo y me dices.

Código:
 _this["submenu_"+i].menutxt2.text = submenu[i].attributes.label;
 _this["submenu_"+i].link = submenu[i].attributes.link; 
añade lo rojo debajo de la linea 46

Luego esto debajo de la 61
Código:
_this["submenu_"+i].onRelease = function()
        {
            getURL(this.link, "blank");
       }
Luego al xml

Código:
<menu label="Sistemas a Medida 1" link="la direccion url"/>
añade link= a cada uno de los elementos del submenu.
  #10 (permalink)  
Antiguo 29/06/2010, 14:01
 
Fecha de Ingreso: junio-2010
Mensajes: 36
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: submenus con url

Muchisimass gracias Relwarc. Hize justamente lo que me dijiste y me fuinciono a la perfeccion.
Agradezco enormemente tu ayuda.
  #11 (permalink)  
Antiguo 29/06/2010, 14:12
 
Fecha de Ingreso: junio-2010
Mensajes: 36
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: submenus con url

Pero como siempre cuando se soluciona un problema surge otro :S. Ahora el problema que tengo es que al exportarlo no hace absolutamente nada del codigo que escribi en actionscript.
Cuando lo pongo en el dreamweaver y lo pruebo en el navegador tampoco lo ve.
Te agradeceria si pudieras sulcionar este problema como lo hiciste con el anterior.
  #12 (permalink)  
Antiguo 29/06/2010, 14:36
 
Fecha de Ingreso: junio-2010
Mensajes: 9
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: submenus con url

Eso puede ser por la colocacion de los archivos, si los has puesto en un servidor remoto asegurate de que la pagina del dreamwever y el swf esten en la misma carpeta.
Código:
<object id="FlashID2" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="200" height="400">
    	    <param name="movie" value="menu.swf" />
Tendras algo asi en el dreamweaver, en lo rojo el nombre de tu swf, si lo tienes asi la pagina web "loquesea.html"tiene que estar guardada en la misma carpeta que el swf.
Por otro lado el xml tiene que estar, por como tu lo invocas "data/menus2.xml", en una carpeta llamada dentro de la carpeta en la que este el swf.
Para mas info postea el codigo html.

Última edición por Relwarc; 29/06/2010 a las 14:38 Razón: vision del code
  #13 (permalink)  
Antiguo 29/06/2010, 15:19
 
Fecha de Ingreso: junio-2010
Mensajes: 36
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: submenus con url

gracias devuelta. Lo que pasa es que el problema sucede igual si yo ejecuto la pelicula swf aunque no la haya colocado en el dreamweaver. Capaz que es algun problema de exportacion u otro problema pero lo raro es que si yo en el flash hago ctrl + enter que es para probar la pelicula, se puede ver todo perfectamente, pero cuando abro la pelicula afuera del flash no se puede ver nada.
Muchas gracias por la ayuda Relwarc
  #14 (permalink)  
Antiguo 29/06/2010, 17:00
 
Fecha de Ingreso: junio-2010
Mensajes: 9
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: submenus con url

Prueba a cambiar esto
Código:
my_xml.load("data/menus2.xml");
por esto
Código:
my_xml.load("menus2.xml");
y exporta la pelicula a la misma carpeta o directorio donde tengas guardado menus2.xml

Etiquetas: submenu, url, xml
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:27.