JQueryを使用して、ドラッグ可能なオブジェクトのx
とy
を取得しようとしています。
シナリオは、オブジェクトを別のオブジェクトにドラッグアンドドロップし、ドラッグアンドドロップオブジェクトの位置を取得することです。
編集:オブジェクトの位置を取得できるようになりましたが、さらに必要です:
ここに私が試したものがあります:
<script>
$(function() {
$('#draggable').draggable({
drag: function() {
var offset = $(this).offset();
var xPos = offset.left;
var yPos = offset.top;
$(this).text('x: ' + xPos + 'y: ' + yPos);
}
});
$("#droppable").droppable({
drop: function(event, ui) {
$(this)
.addClass("ui-state-highlight")
.find("p")
.html("Dropped!");
}
});
});
</script>
ドラッグ可能なオブジェクトの位置を取得できるようになりましたが、サイズ変更可能で、x,y
ドラッグ可能の、サイズも必要です。
次のいずれかを試すことができます。
_$(this).position()
_
または
_$(this).offset()
_
.position()
メソッドを使用すると、オフセットの親に対する要素の現在の位置を取得できます。これとは対照的に、.offset()
は、ドキュメントに対する現在の位置を取得します。
.resizable()およびstopイベントで幅の出力を取得できます。これを追加してみてください:
$('#dragThis').resizable({ handles: "e, w",
stop: function(event, ui) {
var width = ui.size.width;
var height = ui.size.height;
$('#width > span').text($(this).width());
$('#height > span').text($(this).height());
}
});