2012-04-25 9 views

Respuesta

17
$("#d").draggable() 
    .click(function() { 
    $(this).draggable({ disabled: false }); 
}).dblclick(function() { 
    $(this).draggable({ disabled: true }); 
}); 
​​ 

DEMO

+0

gracias ocanal por respuesta, es perfecto – gaurav

0
<div contenteditable="true" id="d"> 
<span>Text to edit</span> 
</div> 

$(function(){ 
$("#d").click(function() { 
$("#d").draggable();  
}); 

$("#d").dblclick(function(){ 
see here for this functionality http://stackoverflow.com/questions/2441565/how-do-i-make-a-div-element-editable-like-a-textarea-when-i-click-it 
}); 
}); 

5

Otra opción es pasar la .draggable ({mango: "handleDiv"}), que le permite mantener pueda arrastrar en todo el tiempo, así como permitiendo la edición contenteditable. Simplemente haz tu div arrastrable con dos divs adentro: el handle, y tu div satisfactorio.

API documentation

8
$("#d") 
.draggable() 
.click(function(){ 
    if ($(this).is('.ui-draggable-dragging')) { 
     return; 
    } 
    $(this).draggable("option", "disabled", true); 
    $(this).attr('contenteditable','true'); 
}) 
.blur(function(){ 
    $(this).draggable('option', 'disabled', false); 
    $(this).attr('contenteditable','false'); 
}); 

Esta es la DEMO: http://jsfiddle.net/UH9UE/222/.

+0

No está funcionando la primera vez que hace clic en el área. ¿Falta algo? –

Cuestiones relacionadas