Comunidad de diseño web y desarrollo en internet online

como saber cuando el puntero esta en un div

Citar            
MensajeEscrito el 29 Mar 2011 06:34 pm
Hola me gustaria saber como puedo detectar que el puntero esta dentro de un div
de preferencia con jquery, ya intente con eventos como mouseenter, mouseout, mouseleave
pero nada funciona. como deseo, lo que quiero es en un interval aparte evaluar cada cierto tiempo si el puntero esta en un div llamado ".poder"
Como puedo hacer esto??

Por rod00x3

Claber

595 de clabLevel



Genero:Masculino  

msie8
Citar            
MensajeEscrito el 29 Mar 2011 08:37 pm
Mira con onmouseover, lo puedes hacer asi.

Código HTML :

<div onmouseover="alert('hola mundo')"></div>


o con jQuery

Código HTML :

<div id="tu_div"></div>

<script languaje="javascript">
$(document).ready(function(){
    $("#tu_div").mouseover(function(){
        alert("Hola mundo");
    });
});
</script>


Saludos

Por jOina

Claber

359 de clabLevel

2 tutoriales

 

Guadalajara, Mexico

firefox
Citar            
MensajeEscrito el 29 Mar 2011 10:07 pm
Antes que nada gracias por tu respuesta... y una disculpa no fui muy especifico.
Se que existen esas formas de hacerlo.. el problema es que son eventos y si por ejemplo tienes varios div en un each de la siguiente forma

Código :

//Esto es en jquery para un mini menu de 5 opciones que cambiaran su background
//al pasar el puntero y se desplasaran suavemente
  $(".opc").each(function(i){
         
   });


Bueno el codigo de ejemplo es un poco largo... si lo necesitas pidemelo y te lo mando. El punto es que como la animacion lleva cierto retardo. Capturar los eventos no me sirve. si no mas bien saber cuando un el puntero esta en un div en especifico.

mi intencion es poder hacer algo como nose usar un setTimeout o algo asi cuando acave la animacion, para hacer otras cosas.

Se que esto es mas facil en flash pero no queren nada en flash... si alguien sabe como se lo agradecedia mucho.

Por rod00x3

Claber

595 de clabLevel



Genero:Masculino  

msie8
Citar            
MensajeEscrito el 29 Mar 2011 10:08 pm
bueno para ser mas especifico busco algo como el hitArea de flash.

Por rod00x3

Claber

595 de clabLevel



Genero:Masculino  

msie8
Citar            
MensajeEscrito el 30 Mar 2011 12:09 am
Mh creo que no queda claro lo que pides.

Entiendo que al ponerte encima de un div con el puntero generas un evento, lo que no entiendo es cuando dices:

Capturar los eventos no me sirve. si no mas bien saber cuando un el puntero esta en un div en especifico


de que forma quieres saber si el puntero esta encima??? que quieres obtener.

Desde mi perspectiva, en el momento en el que declaras que se ejecute el alert() de mi ejemplo, en ese momento tu ya sabes que el puntero esta encima del div.

Saludos

Por jOina

Claber

359 de clabLevel

2 tutoriales

 

Guadalajara, Mexico

firefox
Citar            
MensajeEscrito el 30 Mar 2011 02:26 pm
si tienes razon, de echo use eso para solucionar mi problema. Deja te explico un evento se dispara al momento en que ocurre como lo es el caso de tu ejemplo... pero supongamos que por alguna loca razon quieres saber cada 20 segundos en que div esta el puntero y dependiendo de donde este mostrar un mensaje... No puedes usar eventos por que estos se ejecutan apenas suceden. y aunque usaras el setTimeout dentro del evento si paso el puntero consecutivamente en diferentes divs en 20 segundos aparecerian muchos mensajes.

Entonces yo buscaba o esperaba que hubiera una funcion que te respondiera cuando preguntes si el puntero esta dentro de el div en cuestion. imaginaba algo como:

if($(".midiv").onmouseenter){acciones}

Asi solo meto en un set interval esta condicion y pregunto cada 20 segundos si el puntero esta en un div en especial.

Pero no funciono ni encontre ninguna funcion que hiciera esto. lo que hice para solucionarlo fue colocar una variable que tomara diferentes valores. en cada div, y en el setinterval evaluar la variable asi

$(".midiv1").mouseenter(function(){vari=1});
$(".midiv2").mouseenter(function(){vari=2});
$(".midiv3").mouseenter(function(){vari=3});

y en la funcion que llama el set interval solo pregunte por el valor de vari asi

function preg(){
if(vari==2){alert("No has movido tu cursor");}
}
setInterval(preg,20000);

Por rod00x3

Claber

595 de clabLevel



Genero:Masculino  

msie8
Citar            
MensajeEscrito el 30 Mar 2011 03:36 pm
Hehe que bueno que corregiste tu problema.

Se me hacia confuso ya que con la solución que te di podías hacer justo lo que hiciste y me preguntaba pero entonces que quiere haha.

En fin, en hora buena.

saludos

Por jOina

Claber

359 de clabLevel

2 tutoriales

 

Guadalajara, Mexico

firefox

 

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