Como eu desativo um jQuery arrastável, por exemplo, durante um postback do UpdatePanel?
97
Poderia criar uma função DisableDrag (myObject) e EnableDrag (myObject)
myObject.draggable( 'disable' )
Então
myObject.draggable( 'enable' )
Para desativar temporariamente o comportamento arrastável, use:
Para remover o comportamento arrastável permanentemente, use:
fonte
Para habilitar / desabilitar draggable em jQuery eu usei:
A resposta da @Calciphus não funcionou para mim com o problema de opacidade, então usei:
Funcionou em dispositivos móveis também.
Aqui está o código: http://jsfiddle.net/nn5aL/1/
habilitardesabilitararrastáveljqueryopacidadeproblemahtml
fonte
button()
mas não adiantou.Levei um pouco de tempo para descobrir como desabilitar arrastável ao soltar - use
ui.draggable
para fazer referência ao objeto sendo arrastado de dentro da função de soltar:HTH alguém
fonte
Parece que ninguém olhou a documentação original. Pode ser que não houvesse naquela época))
Inicializa um arrastável com a opção desativada especificada.
Obtenha ou defina a opção disabled, após o init.
fonte
No caso de uma caixa de diálogo, ela tem uma propriedade chamada draggable, defina-a como false.
Embora a pergunta seja antiga, tentei a solução proposta e não funcionou para o diálogo. Espero que isso possa ajudar outras pessoas como eu.
fonte
A seguir está como isso ficaria dentro de
.draggable({});
fonte
Tenho uma solução mais simples e elegante que não atrapalha classes, estilos, opacidades e outras coisas.
Para o elemento arrastável - você adiciona o evento 'start' que será executado toda vez que você tentar mover o elemento para algum lugar. Você terá uma condição em que o movimento não é legal. Para os movimentos ilegais - evite-os com 'e.preventDefault ();' como no código abaixo.
Você é bem vindo :)
fonte
Alterar
draggable
atributo depara
fonte