2011-03-11 6 views
0

를 엉망으로 나는 다음과 같은 설정이 있습니다드래그 가능한 항목은 CursorAt 위치

<asp:treeview cssclass="draggable"><items...> <table /> 

을 내가 사용하여 테이블에 트 리뷰에서 항목을 드래그 할 수 있도록 그것을 설정 jQuery를이 : 드래그하는 동안 그래서, 복제가 현재 마우스 위치 아래에 약간을 유지하기위한 것입니다

$(".draggable").draggable({ helper: "clone", cursorAt: { left: -10, top: -10} }) 

, 사용자에게 쉽게 확인합니다.

그러나 열려있는 노드가 내용의 단순한 페이지를 넘어서 트리 뷰를 밀어 낼 때 트리 뷰를 스크롤 할 수있게해야합니다. 그렇지 않으면 끌어서 놓기가 사용자에게 너무 어려워집니다. 다음과 같이 범위 내

, 나는, 트 리뷰 주위에 스크롤 사업부를 넣어했습니다

<div style="padding-right: 20px; overflow: auto; overflow-x: hidden; height: 300px;"> <asp:treeview cssclass="draggable"><items...></div> <table /> 

이 예상대로 작동하지만 문제는 이제 없다 - 드래그 - 복제 된 요소가 더 이상 마우스 위치 바로 아래에 있지만 대신 사용자를 혼란스럽게합니다.

draggable() 메서드의 "cursorAt"속성을 제거하려고 시도했지만 도움이되지 않습니다.

그래서 div의 고정 된 높이가 복제 된 요소의 위치를 ​​어지럽히는 것 같습니다.이 문제를 어떻게 해결할 수 있습니까?

답변

1

좋아, 대답은 CursorAt는이 경우 div로 변경된 드래그 된 항목의 부모로 기본 설정됩니다. 그래서

$("draggable").draggable({ helper: "clone", appendTo:'body', cursorAt: { left: -10, top: -10} }) 

()의 드래그를 변경

문제를 해결.

관련 문제