Question

J'ai un objet qui a un statut de propriété = « verrouiller ». Le div qui représente cet objet est redimensionnable et draggable.

Pour la glissable, si i utilise la logique suivante puis le glissement est effectivement verrouillé commencer: {... si l'état == verrouillage puis return false ...}

Mais la même logique pour redimensionnable ne fonctionne pas

Je peux régler la redimensionnable ( « désactivé »), mais je me demandais si je peux arrêter le début ou Redimensionner dans les redimensionner les événements

Merci

Était-ce utile?

La solution

Il ne semble pas que vous pouvez annuler un événement resize dès le début / redimensionne méthodes.

peut spécifier un sélecteur auquel les événements redimensionnables ne sont pas applicables, en utilisant l'option cancel. Avec cette stratégie, vous devez ajouter une classe à chaque div redimensionnable indiquant si oui ou non vous voulez qu'il soit redimensionnée.

Par exemple, disons que vous avez un ensemble de données comme ceci:

var data = [
    { id: 'test1', status: 'lock' },
    { id: 'test2', status: 'unlock' },
    { id: 'test3', status: 'lock' }
];

Et vous vouliez verrouiller ces éléments avec un statut: « verrouiller ». En supposant que vous avez du code qui crée des éléments DOM à partir de ces données comme ceci:

var i, length = data.length;
for(i = 0; i < length; i++) {
    $("body").append("<div id='" + data[i].id + "' class='resizable " + data[i].status + "'/>");
}

Notez que les éléments ont maintenant une classe (verrouiller ou déverrouiller) en fonction de leur propriété « état ».

Maintenant, vous pouvez effectuer les opérations suivantes pour annuler le redimensionnement des éléments avec une lock de classe:

$(".resizable").resizable({ cancel: ".lock" });

Essayez-: http://jsfiddle.net/andrewwhitaker/CDUce/

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top