2012-11-20 5 views
0

위젯을 내 div에 끌어다 놓으 려합니다. 내 위젯을 내 div 위로 드래그하지만 진정한 위치를 드롭하지 않습니다.드롭 가능 영역 선택

여기 내 예입니다 jsfiddle.net/Mg6V3/15

내 목표는 내가 "1"에 위젯을 놓을 때, 위젯이 드롭해야한다.

감사합니다.

+1

"그리드"를 떨어 뜨린 후 droppable 상태를 유지하려면 #bigContainer가 필요합니까? – WTK

+0

예, 필요합니다. 하지만 여기 내 문제는 # 4Grid_1 또는 # 4Grid_2 등으로 떨어질 수 없다는 것입니다. "over"이벤트를 사용하려고했지만 완벽한 해결책은 아닙니다. 나는 div와 grid를 많이 가지고 있으므로 각 요소에 대한 코드를 작성하고 싶지는 않습니다. – linepisode

+1

흠, 그 중첩 된 대상을 쉽게 가질 수 없으므로 문제가됩니다. – WTK

답변

1

원래 생각보다 쉽습니다.

우선, droppable을 초기화 할 때 설정할 수있는 greedy 옵션이 있습니다. 중첩 된 droppables를 사용할 때 drop 이벤트가 모든 삭제 가능 상위 프로세스에 전파되지 않도록하는 것을 목표로합니다.

두 번째로, 드롭 가능한 동작을 일치하는 선택기에 바인딩하는 것은 지속적인 프로세스가 아닙니다. 즉, $('.test').droppable()과 같은 것을 사용하면 DOM에 이미 존재하는 해당 요소에만 droppable을 바인딩한다는 의미입니다. 새 템플릿을 만들면 스스로 설정할 수 있습니다.

다음은 코드를 기반으로 한 작동 예제입니다. 나는 변화를 최소화하려고 노력했다. 더 잘 청소할 수 있지만 그림 일 뿐이므로 좋다고 생각한다. http://jsfiddle.net/vM3dU/

+0

WTK에 감사드립니다. 이제 이해하겠습니다. 그것은 작동합니다! – linepisode