0

画面に div ボックスがあります。ユーザーが必要なときにいつでもjqueryボックスのサイズを変更し、jqueryのドラッグ可能なイベントを同時にキャンセルしたり、その逆を行ったりする必要があります。ドラッグ可能なセクションにプラグインを使用していますが、ボックスのサイズを変更すると問題が発生するため、サイズを変更している間はドラッグ可能なイベントをキャンセルすることで解決できます。以下のコードを試しましたが、機能せず、ロジックが正しくないことがわかっています。私の質問は、これを機能させるためにどのように修正すればよいですか?

<script src="http://code.jquery.com/jquery-latest.js"></script>

<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js">
</script>

<script src="js/easing.js" ></script>
<script src="js/animadrag.js" ></script>
<link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs
/jqueryui/1.7.1/themes/blitzer/jquery-ui.css">

<div class="body">
    <div class="move"></div>
</div>


<script type="text/javascript" >

$('.move').resizable();     

$('.move').on('hover',function (event) {
//something, although I don't know what, should be put here to cancel resizable
    $('.move').animaDrag({ 
                speed: 150, 
                interval: 120, 
                easing: null, 
                cursor: 'move', 
                boundary: '.body',
                grip: null,  
                overlay: true           
});     

</script>

これが実際の jsbin の例です。http://jsbin.com/obovof/2/edit

4

1 に答える 1

0

サイズ変更中にドラッグ可能を無効にする理由がわかりません。技術的には、ユーザーはサイズ変更中に要素をドラッグすることはできません。とにかく、animaDrag: の代わりにドラッグ可能な jqueryui メソッドを使用する場合は、次の方法で実行できます。

$('.move').draggable().resizable({
    start: function(e, ui) {$(this).draggable( "disable" )},
    stop: function(e, ui) {$(this).draggable( "enable" )}
});
于 2012-09-23T01:10:30.970 に答える