1

プロパティ status="lock" を持つオブジェクトがあります。このオブジェクトを表す div は、サイズ変更およびドラッグ可能です。

ドラッグ可能な場合、次のロジックを使用すると、ドラッグは効果的にロックされます: {... if status==lock then return false ...}

ただし、サイズ変更可能の同じロジックは機能しません

resizable("disabled") を設定できますが、開始またはサイズ変更イベント内でサイズ変更を停止できるかどうか疑問に思っていました

ありがとうございました

4

1 に答える 1

0

start/resize メソッドからサイズ変更イベントをキャンセルできるようには見えません。

オプションを使用して、サイズ変更可能なイベントが適用されないセレクターを指定できますcancel。この戦略では、サイズを変更divするかどうかを示す、サイズ変更可能な各クラスにクラスを追加する必要があります。

たとえば、次のようなデータセットがあるとします。

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

そして、ステータスが「ロック」のアイテムをロックしたいと考えました。次のように、このデータから DOM 要素を作成するコードがあるとします。

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

要素には、「ステータス」プロパティに応じてクラス (ロックまたはロック解除) があることに注意してください。

これで、次のようにして、 class を持つ要素のサイズ変更をキャンセルできますlock:

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

試してみてください: http://jsfiddle.net/andrewwhitaker/CDUce/

于 2011-01-06T02:57:53.520 に答える