Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/08/2011, 18:16
leif_sk8er
 
Fecha de Ingreso: junio-2009
Mensajes: 309
Antigüedad: 15 años, 5 meses
Puntos: 5
JQUERY Droppable propagacion

Buenas,
Estoy haciendo unos elementos que son droppables en un menu.

Para ello tengo 3 divs:
http://img600.imageshack.us/img600/9927/sinttulo1vv.png

El div rojo es el menu que inicialmente está oculto.

El div verde hace que el div rojo aparezca al tocarle con el elemento que estamos draggando:
Código Javascript:
Ver original
  1. $("#verde" ).droppable({
  2.         accept: "div.widget",
  3.         tolerance: 'pointer',
  4.  
  5.  
  6.         over: function(event, ui) {
  7.         // show rojo
  8.         }
  9. });

El div azul hace que el div rojo se oculte al salir de el:
Código Javascript:
Ver original
  1. $("#azul").droppable({
  2.         accept: "div.widget",
  3.         tolerance: 'pointer',
  4.  
  5.         out: function() {
  6.         // Hide the red div.
  7.         }
  8. });


El problema es que estos droppables bloquean el evento drop de este otro droppable que he creado para las secciones del menu:
Código Javascript:
Ver original
  1. $("#menu_escritorios .escritorio").droppable({
  2.         accept: '.widget',
  3.         tolerance: 'pointer',
  4.        
  5.         drop: function(event, ui) {
  6.          // Hacemos el drop
  7.         }
  8.     });


El caso es que en este ultimo droppable los eventos de over y out los detecta pero el drop no. Segun he leido parece ser que los otros droppables me estan evitando la propagacion.

En versiones anteriores de JQuery UI esto no pasaba, pero ahora he actualizado a la version 1.8.16 (La ultima) y ocurrre.

En la documentacion hablan de una opcion llamada greedy que sirve para permitir la propagacion, pero no me funciona, es decir, no hace lo correcto.



Alguna ideaa de como solucionarlo??
Gracias.