Comunidad de diseño web y desarrollo en internet online

consulta sobre cambio de cursor en un area determinada

Citar            
MensajeEscrito el 01 Feb 2008 07:46 pm
saludos a todos,
este es mi primer post a pesar de llevar unas cuantas semanas aprendiendo infinidad de cosas en este foro, desde ya muchas gracias.

estoy haciendo un site en el que, desde la pagina de inicio, llamo con loadmovie un .swf con el portfolio,
y necesito que cuando pase el cursor sobre algunas de las imagenes que van apareciendo en el portfolio, el cursor se transforme en una lupa (para indicar que esta se puede ampliar) y al hacer click en la imagen llame a un html con la version a mayor tamaño.
he buscado y probado numerosas alternativas y no he encontrado la manera de hacerlo correctamente.
al aplicarle este tipo de AS2 y otros parecidos..

Mouse.hide();
cursor_mc.onMouseMove = function() {
this._x = this._parent._xmouse;
this._y = this._parent._ymouse;
updateAfterEvent();
};

logro que el cursor cambie, pero este cambio afecta tambien a la pelicula principal y no sólo al area de la imagen en particular del swf importado...

he seguido varios tutorales y consejos de otros post que encontre con las busquedas, para delimitar el area de cambio con rollOver y el rollOut pero no he podido hacer que funcionen. tal vez por el tema de las rutas.. no se...

recien empiezo con esto asi que les agradezco la paciencia y cualquier ayuda que pudieran darme al respecto
saludos

Por zgus

6 de clabLevel



Genero:Masculino  

safari
Citar            
MensajeEscrito el 01 Feb 2008 08:45 pm
pon un boton transparente sobre la imagen y dentro de ese pon el roll over para que se vea la lupa y el roll out para poner otra vez la flecha ;)

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

firefox
Citar            
MensajeEscrito el 04 Feb 2008 04:52 pm
nasho muchas gracias por tu respuesta, he estado probando diferente tutoriales mas mi conocimientos cavernicolas de accion script y mas o menos arme esto que funciona bastante bien..

siendo "bt_transp1" el nombre de instancia del boton transparente con el que delimito el area de cambio y "mc_lupa" el mc con el grafico de la lupa.
----------------------------------------------------
stop();

mc_lupa._visible=false;

bt_transp1.onRollOver = function() {
mc_lupa._x=_xmouse;
mc_lupa._y=_ymouse;
startDrag("mc_lupa");
Mouse.hide();
mc_lupa._visible=true;
updateAfterEvent();
};
bt_transp1.onRollOut = function() {
stopDrag();
Mouse.show();
mc_lupa._visible=false;
};
----------------------------------------------------


por cada zona diferente en que necesito que aparezca la lupa hago una instancia nueva del boton transparente ..bt_transp2 etc.. a la agrego

pero tengo dos dudas nuevas que quisiera consultarles:
lo que noto es que el movimiento de la lupa no es tan fluido, avanza como de a saltitos... tenes idea como corregir el AS para que se vea mejor. o si debo utilizar otro tipo de codigo?

otra cosa que ocurre es que en mis primeros intentos, el mc_lupa en lugar de un grafico fijo con la imagen tenia adentro un boton mediante el cual al hacer click emitia un sonido y se modificaba levemente la imagen... (en el script que puse en mi primer post esto funcionaba ok) el tema es que con este AS eso ya no funciona y se ve la lupa como titilando continuamente, si bien en este caso a ser mi sitio, puedo prescindir de ello, me gustaria saber porque ocurre y si se puede arreglar. (probe metiendo stops en todos lados y obviamente nah..)

desde ya muchas gracias

Por zgus

6 de clabLevel



Genero:Masculino  

safari
Citar            
MensajeEscrito el 04 Feb 2008 08:30 pm
Por lo que veo tienes varios conflictos en tu código.
• Si usas las propiedades de _x y _y ya no necesitas el startDrag;
• La linea del updateAfterEvent solo funciona en los eventos creados por el Mouse, por eso no se ve fluido... debes crear un evento dentro del rollOver que se ejecute para que se pegue la lupa.

Código :

stop();

mc_lupa._visible = false;

bt_transp1.onRollOver = function() {
   this.onMouseMove = function() {
      mc_lupa._x = _xmouse;
      mc_lupa._y = _ymouse;
      mc_lupa._visible = true;
      updateAfterEvent();
      Mouse.hide();
   };
};
bt_transp1.onRollOut = bt_transp1.onReleaseOutside=function () {
   delete this.onMouseMove;// con esto lo borramos temporalmente
   Mouse.show();
   mc_lupa._visible = false;
};

Por vcomics

217 de clabLevel



 

Medellin - Colombia

firefox
Citar            
MensajeEscrito el 04 Feb 2008 10:11 pm
vcomic, una vez mas muchas gracias por tu respuesta, entiendo el origen de los conflictos que me señalas pero cuando aplico el codigo y lo corro, me indica:

**Error** Símbolo=mc_contenido, capa=acciones, fotograma=1:Línea 6: El operador '=' debe ir seguido de un operando
  bt_transp1.onMouseMove = function() {

**Error** Símbolo=mc_contenido, capa=acciones, fotograma=1:Línea 7: Error de sintaxis.
      mc_lupa._x = _xmouse;

**Error** Símbolo=mc_contenido, capa=acciones, fotograma=1:Línea 8: Error de sintaxis.
      mc_lupa._y = _ymouse;

Total de errores de ActionScript: 3 Errores comunicados: 3


a esta hora ya debo tener la cabeza quemada (ademas de mi desconocimiento..) porque no veo los errores de sintaxis

mc_contenido es el mc que contiene todos los elementos. imagenes , botones, lupa etc..

gracias

Por zgus

6 de clabLevel



Genero:Masculino  

safari
Citar            
MensajeEscrito el 05 Feb 2008 01:21 am
lo que pasa es que el codigo lo debes poner en el frame y no en un MovieClip, ya que las funciones se nombran diferente dentro de los movieClips.

Por vcomics

217 de clabLevel



 

Medellin - Colombia

firefox
Citar            
MensajeEscrito el 21 May 2008 11:05 pm
hola como estan tanuz aqui

yo necesito encontrar la forma de detectar si el mouse esta arriba de algo o no ustedes saben como hacerlo, yo no tengo la menor idea pero con eso resuelvo el problema de los div trasparentes en fire fox y me pudirean ayudar estaria excelente y con eso posteraia la solucion

Por tanuz

5 de clabLevel



Genero:Masculino  

firefox

 

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