0

画像をトリミングするための座標を取得するために、div 内でドラッグできる画像を含む div があります。正しい座標を取得できましたが、画像を特定の位置にドラッグするとすぐに、画像の詳細が気に入らなければ別の位置に再ドラッグできません...どこが間違っていますか...最終的な位置 x + y は非表示の入力に保存されます...これが私のコードです:

    <!-- Div container 350x350px with border where detail of image can be chosen -->
<div id="draggable">
    <!-- Image (bigger than div draggable) that is draggable in the div -->
<img id="dragimg" src="<?php echo $path_to_image_directory.$filename; ?>" />
</div>


<script type="text/javascript">
    $(document).ready(function() {
        $("#dragimg").draggable({
            stop: function(){
                var finalxPos = $(this).css('left');
                var finalyPos = $(this).css('top');
                //  alert( "Drag stopped!\n\nOffset: (" 
                + finalxPos + ", " + 
                finalyPos + ")\n");
                $('#crop [name="finalX"]').val(finalxPos);
                $('#crop [name="finalY"]').val(finalyPos);
            }
        });
    });
</script>

私の問題を解決するのを手伝ってもらえますか?

4

1 に答える 1

1

親の絶対位置を取得するには .position() です

$('.object').bind('drag',function(){

 var obj = $(this);
 var position = obj.position();
 var leftpos = position.left;
 var toppos = position.top;
 });

次のような入力値関数を追加できます

<input type="text" name="top" id="topVal"/>

そしてバインド関数で

$('#topVal').val(toppos);
于 2012-05-16T23:07:50.310 に答える