0

こんにちは、bodyArea という名前の div があり、その div に ibject をドラッグしたいと考えています。

オブジェクトをドラッグすると、ドラッグ可能なオブジェクトを解放しているのとまったく同じ位置で、オブジェクトがdivに追加されます..

しかし、いくつかの問題のために(正しく機能していないことがわかりません..

ここに私のコードがあります

 $("#bodyArea").droppable({ 
                drop: function(event, ui){
                    //this is so that the element "sticks" even when tab is changed.
                    ui.draggable.addClass("draggedout");
                                    $(this).append(ui.draggable.css({'top': event.pageY-$(this).offset().top,'left': event.pageX-$(this).offset().left}));// this line is what i added extra.
//and its for this line that draggable object is getting appended but not at the desired position

                },
                //changes current tab to the tab the piece belongs to when dragged out of body area
                out: function(event, ui){
                    ui.draggable.removeClass("draggedout");
                    var whichTab = ui.draggable.parent().attr("id");
                    $("#piecesArea").tabs('select' , whichTab);
                }
            });
4

1 に答える 1

0

私はドラッグ可能/ドロップ可能なjQuery UI機能に精通していませんが、を使用してドロップイベントの下に要素を取得し、document.elementFromPoint( x, y )必要に応じてその要素の前後にオブジェクトを挿入できるはずです。

$this.hide(); // hide it momentarily so the unlerlying element is visible
element = document.elementFromPoint( event.pageX, event.pageY );
$this.insertBefore(element).show();
于 2013-07-14T05:33:28.633 に答える