Foros del Web » Programando para Internet » Javascript » Frameworks JS »

problemas con hover()

Estas en el tema de problemas con hover() en el foro de Frameworks JS en Foros del Web. Buenas, un saludo a todos ya que este es mi primer post, estoy comenzando con jquery y espero en un futuro ser yo el que ...
  #1 (permalink)  
Antiguo 13/08/2011, 07:38
 
Fecha de Ingreso: agosto-2011
Mensajes: 2
Antigüedad: 12 años, 8 meses
Puntos: 0
problemas con hover()

Buenas, un saludo a todos ya que este es mi primer post, estoy comenzando con jquery y espero en un futuro ser yo el que propoga algua solucion XD.


Tengo creada una tabla y cada celda tiene un class que dependiendo del valor que tenga cambiara color etc. Estos valores los tengo definidos en un css. Mi objetivo es que al pinchar en cualquier celda se inicie un hover() y al ir pasando por encima de las celdas cambien de color y al volver a pinchar pare. Basicamente es un lienzo donde pintas.

Y aquí mi problema, cuando pincho comienza a pintar pero no se como hacer que al volver a pinchar pare el evento. He probado haciendo un interruptor con if, lei algo sobre unbind pero vamos que ando algo perdido o lo estoy haciendo de la forma erronea XD.


Esto es lo que intente con if

<script>

$(document).ready(function(){
var nume = 0;

$("td").click(function(){
if(nume == 1){
nume = 0;

}else if(nume == 0){
$("td").hover(function(){

var cla = $(this).attr("class");
$(this).removeClass(cla);
//En este punto en teoria iria una variable con el valor del class previamente elegido, lo puse asi para simplificar
$(this).addClass("meld09");
});
nume = 1;
}

});

});

</script>



gracias de antemano
  #2 (permalink)  
Antiguo 13/08/2011, 12:22
 
Fecha de Ingreso: agosto-2011
Mensajes: 2
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: problemas con hover()

Ya solucione el problema XD, cambie el hover por un mouseenter que me hace la misma función y use unbind para desvincular el evento mouseenter del td.
Lo que no entiendo muy bien es porque no funciona el unbind con el hover().



<script>

$(document).ready(function(){

var nume = 0;

$("td").click(function(){

if(nume == 1){
$("td").unbind("mouseenter");
nume = 0;
}else if(nume == 0){

$("td").mouseenter(function(){

var cla = $(this).attr("class");
$(this).removeClass(cla);
$(this).addClass("meld09");

});

nume = 1;
}

});

});

</script>




sorry por publicarlo en el sitio erroneo pense que estaba dentro de esta sección

Etiquetas: javascript, jquery
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 09:43.