Comunidad de diseño web y desarrollo en internet online

Problema con SSWFAddress y google maps

Citar            
MensajeEscrito el 10 Jul 2010 08:32 pm
Hola! que tal? este es mi primer post en el foro... soy nuevo :$.
Hace unos días comence a aprender AS3, me he visto videos tutoriales y he leido foros... pero aún se me hace un poco complicado entender el lenguaje.
Estoy creando una página para una productora, que tiene varios comerciales de distintos directores y una sección de contacto, donde tengo un mapa de google.

el problema con SWFAddress es que en Firefox, no me funcionan las teclas de Atras/Adelante (he leido en varios post de este mismo foro y en otros y mucha gente tiene este drama pero no he encontrado solución.), no se si es problema de mi codigo AS3 o del HTML.

y le problema con google maps es que carga perfecto cuando entro en contacto, pero al hacer click en otra sección (inicio o directores) el mapa queda cargado arriba de todo. Me imagino que tengo que borrarlo, botarlo, sacarlo o no se como se deba decir en programación =(. Tenía el mismo problema con los videos pero encontre la solución .. es algo así:

Código ActionScript :

video.addEventListener(Event.REMOVED_FROM_STAGE, borrar);
function borrar(event:Event):void
{
   video.stop();
   video.getVideoPlayer(0).close();
   video = null;
   removeEventListener(Event.REMOVED_FROM_STAGE,borrar);
}


con eso se eliminaba el video de escena.

bueno aquí van los códigos de swfaddress y gmap.

Código ActionScript :

import flash.events.EventDispatcher;
import fl.motion.MotionEvent;
import flash.events.MouseEvent;
import flash.media.Video;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.Event;
import SWFAddress;
import SWFAddressEvent;
import com.google.maps.*;
import com.google.maps.controls.*;
import com.google.maps.overlays.*;


// ----------------------- resize --------------------------------;
function resizeHandler(e:Event):void
{
   fondo.x = (fondo.stage.stageWidth / 2) - (fondo.width / 2);
   fondo.y = (fondo.stage.stageHeight / 2)- (fondo.height / 2);
}
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.addEventListener(Event.RESIZE, resizeHandler);
stage.dispatchEvent(new Event(Event.RESIZE));
// ------------------------- resize ------------------;


var nombreBoton:String;
trabajos.visible = false;
var marca2:String;


inicio_btn.addEventListener(MouseEvent.CLICK,tellMe);
directores_btn.addEventListener(MouseEvent.CLICK,tellMe);
contacto_btn.addEventListener(MouseEvent.CLICK,tellMe);
uno.addEventListener(MouseEvent.CLICK,tellMe);
inicio2.addEventListener(MouseEvent.CLICK,tellMe);
inicio3.addEventListener(MouseEvent.CLICK,tellMe);
irons1australpack.addEventListener(MouseEvent.CLICK,queMarca2);
trabajos.addEventListener(Event.REMOVED_FROM_STAGE, borrar2);




// ----------------- videos ultimos trabajos ---------------
function queMarca2(evt:MouseEvent):void
{
   trace("la marca es " + evt.target.name);
   marca2 = (evt.target.name);
   trace(marca2);
   playClip1(marca2);

}
function playClip1(marca2):void
{

   trabajos.visible = true;
   var nc1:NetConnection = new NetConnection();
   nc1.connect(null);
   trabajos.play("material/" + marca2 + ".flv");

}
// --------------------- videos ultimos trabajos ---------------

/*function cambia1(nombreBoton):void
{
if (nombreBoton == "null")
{

}
else
{
trace("ir a "+nombreBoton);
//gotoAndStop(nombreBoton);
SWFAddress.setValue("/"+nombreBoton+"/");
}

}*/

// ----------------------- borrar video y trabajos de stage ----------------
function borrar(event:Event):void
{
   video.stop();
   video.getVideoPlayer(0).close();
   video = null;
   removeEventListener(Event.REMOVED_FROM_STAGE,borrar);
}
function borrar2(event:Event):void
{
   trabajos.stop();
   trabajos.getVideoPlayer(0).close();
   trabajos = null;
   removeEventListener(Event.REMOVED_FROM_STAGE,borrar2);
}
// ---------------------- borrar video y trabajos de stage -------------

function tellMe(evt:MouseEvent):void
{
   SWFAddress.setValue("/" + evt.target.name + "/");
}

SWFAddress.addEventListener(SWFAddressEvent.CHANGE, handleSWFAddress);

function handleSWFAddress(e:SWFAddressEvent)
{
   switch (e.value)
   {
      case "/inicio2/" :
         gotoAndStop("/inicio2/");
         SWFAddress.setTitle("Últimos Trabajos");
         break;
      case "/inicio3/" :
         gotoAndStop("/inicio3/");
         SWFAddress.setTitle("Últimos Trabajos");
         break;
      case "/directores_btn/" :
         gotoAndStop("/directores_btn/");
         SWFAddress.setTitle("Directores");
         break;
      case "/contacto_btn/" :
         gotoAndStop("/contacto_btn/");
         SWFAddress.setTitle("Contacto");
         break;
      case "/inicio_btn/" :
         gotoAndStop("/inicio_btn/");
         SWFAddress.setTitle("Últimos Trabajos");
         break;
   }
}





stop();

eso en el primer frame.

Código ActionScript :

var nombreDirector:String;

radames.addEventListener(MouseEvent.CLICK,tellMe2);
aldo.addEventListener(MouseEvent.CLICK,tellMe2);
adriana.addEventListener(MouseEvent.CLICK,tellMe2);
hernan.addEventListener(MouseEvent.CLICK,tellMe2);
jose.addEventListener(MouseEvent.CLICK,tellMe2);
lean.addEventListener(MouseEvent.CLICK,tellMe2);
losfelipes.addEventListener(MouseEvent.CLICK,tellMe2);
francisca.addEventListener(MouseEvent.CLICK,tellMe2);
nicolas.addEventListener(MouseEvent.CLICK,tellMe2);
gustavo.addEventListener(MouseEvent.CLICK,tellMe2);
francisco.addEventListener(MouseEvent.CLICK,tellMe2);
director.addEventListener(MouseEvent.CLICK,volver);


function volver(evt:MouseEvent):void 
{
   gotoAndStop("/directores_btn/");
   SWFAddress.setValue("/directores_btn/");
}


function tellMe2(evt:MouseEvent):void
{
   SWFAddress.setValue("/" + evt.target.name + "/");
}

SWFAddress.addEventListener(SWFAddressEvent.CHANGE, handleSWFAddress2);
function handleSWFAddress2(e:SWFAddressEvent)
{
   switch (e.value)
   {
      case "/radames/" :
         gotoAndStop("/radames/");
         SWFAddress.setTitle("Últimos Trabajos");
         break;
      case "/aldo/" :
         gotoAndStop("/aldo/");
         SWFAddress.setTitle("Últimos Trabajos");
         break;
      case "/adriana/" :
         gotoAndStop("/adriana/");
         SWFAddress.setTitle("Últimos Trabajos");
         break;   
      case "/hernan/" :
         gotoAndStop("/hernan/");
         SWFAddress.setTitle("Directores");
         break;
      case "/jose/" :
         gotoAndStop("/jose/");
         SWFAddress.setTitle("Contacto");
         break;
      case "/lean/" :
         gotoAndStop("/lean/");
         SWFAddress.setTitle("Últimos Trabajos");
         break;   
      case "/losfelipes/" :
         gotoAndStop("/losfelipes");
         SWFAddress.setTitle("Directores");
         break;
      case "/francisca/" :
         gotoAndStop("/francisca/");
         SWFAddress.setTitle("Contacto");
         break;
      case "/nicolas/" :
         gotoAndStop("/nicolas/");
         SWFAddress.setTitle("Últimos Trabajos");
         break;   
      case "/gustavo/" :
         gotoAndStop("/gustavo/");
         SWFAddress.setTitle("Directores");
         break;
      case "/francisco/" :
         gotoAndStop("/francisco/");
         SWFAddress.setTitle("Contacto");
         break;
   }
}


stop();


eso en directores

Código ActionScript :

import flash.media.Video;
video.visible = false;
var marca:String = "null";

function playClip(marca):void
{
   if (marca == "null")
   {
      trace(marca);
   }
   else
   {
      video.visible = true;
      var nc:NetConnection = new NetConnection();
      nc.connect(null);
      video.play("material/" + marca + ".flv");
   }

}


function queMarca(evt:MouseEvent):void
{
   trace("la marca es " + evt.target.name);
   marca = (evt.target.name);
   trace(marca);
   playClip(marca);
}





video.addEventListener(Event.REMOVED_FROM_STAGE, borrar);
radames1branfrut.addEventListener(MouseEvent.CLICK,queMarca);
radames2danettechoco.addEventListener(MouseEvent.CLICK,queMarca);
radames3hellmansketchup.addEventListener(MouseEvent.CLICK,queMarca);


ese en uno de los directores como ejemplo.

Código ActionScript :

var lat:Number=-33.42467;
var lon:Number=-70.61712;
var zoom:int=15;


var map:Map = new Map();
map.key="ABQIAAAANmSIPlw5NlhlE85GqmNFKRSPxBvcm6r3PQaqoY2wXKdR1mO-zxRdq87RwwZ78nGAzQXrjh9vosFDIg";
map.setSize(new Point(400, 400));
map.x=30;
map.y=40;

map.addEventListener(MapEvent.MAP_READY, onMapReady);
this.addChild(map);


function onMapReady(event:Event):void 
{
   map.setCenter(new LatLng(lat,lon), zoom, MapType.NORMAL_MAP_TYPE);
   map.addControl(new PositionControl());
   map.addControl(new ZoomControl());

   var marker:Marker=new Marker(new LatLng(lat,lon));
   marker.addEventListener(MapMouseEvent.CLICK, function(event:Event):void {;
   marker.openInfoWindow(new InfoWindowOptions({title: "IRONS FILM", content:"Padre Mariano # 192 Of. 15 Providencia."}));
   });
   map.addOverlay(marker);
}



y ese es en contacto donde está gmap.

talvez hayan codigos innecesarios o nose.. bueno si alguien sabe cual será el problema de firefox y gmap.
(en firefox tengo los archivos swfobject y address)

Gracias.

Por elcoka

16 de clabLevel



 

Santiago, Chile

firefox
Citar            
MensajeEscrito el 12 Jul 2010 08:44 pm
Bienvenido a Cristalab. Un tip que quizás te sea útil: cuanto mas breve y concisa tu consulta, mas chances tienes de que te respondan. ¿Muchos detalles ayudan? Solo si te los piden

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 14 Jul 2010 04:56 am
Gracias.

si.. si me dí cuenta que me exedí con poner todo el codigo.

bueno aqui va mas corto..
estoy haciendo esta página www.ironsfilm.cl, el swfaddress funciona "casi" bien... pero donde queda la escoba, es cuando uno quiere ingresar a un director de manera directa sin tener en el "caché" la página de inicio.
ej: www.ironsfilm.cl/#/radames/
si entran directamente a ese link.. se queda la embarrada... pero si primero pasas por el inicio todo funciona bien.

Que podrá ser =( ???? estoy super estresado ya.

Gracias!

Por elcoka

16 de clabLevel



 

Santiago, Chile

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.