2013-03-12 2 views
0

저는 드래그 가능한 div를 가지고 있으며 드래그 한 후 페이지의 div 위치를 캡처 할 수 있습니다.드래그 할 수있는 div의 위치를 ​​가져와야합니다.

페이지를 다시로드 할 때 마지막 위치에 해당 div를 렌더링 할 계획입니다.

지금 제 질문은 페이지 주위로 드래그 한 후 div가있는 좌표 또는 loacation을 어떻게 잡을 수 있습니까?

여기 내 코드입니다 :

<script type="text/javascript"> 

$(document).ready(function() 
{ 
    $("#filterItem").click(function() { 
     $("#filterPanel").fadeToggle("slow", function() { 
      toggleImg('filter'); 
     }); 
     $(this).toggleClass("active"); 
     toggleImg("filter"); 
     return false; 
    }); 
    $("#filterPanel").draggable({ snap: "#filterItem" }); 

    $("#mgmtViewHeaders [title]").tooltip(); 
}); 

function closeDraggablePanel(panelName, topPos) 
{ 
    $("#"+panelName+"Panel").toggle("slow", function() { 
     toggleImg('filter'); 
     // Reposition to default 
     $("#"+panelName+"Panel").css("top", topPos); 
     $("#"+panelName+"Panel").css("left", "25"); 
    }); 

} 

HTML :

<c:set var="filterTop" value="150" scope="page"/> 

<div id="filterDiv"> 
<ul class="sideMenu" style="top: ${filterTop}px;"> 
<li style="border-bottom: none;"> 
    <div id="filterItem" class="sideMenuDiv"><span><img src="../images/plus.gif" />&nbsp;Filters</span> 
    </div> 
</li> 
</ul> 
</div> 

<%-- Y coordinate of the top edge of the filter panel. --%> 
<c:set var="panelTop" value="${filterTop}" scope="page"/> 

<div class="sideMenuPanel" style="display: none; width: 290px; top: ${panelTop}px;" id="filterPanel"> 
</div> 

답변

1
$.position() 

는이 유를 위쪽 및 왼쪽 좌표를 제공 할 것입니다.

+1

더 구체적으로, CSS가 무엇인지에 따라'.position()'또는'.offset()'. –

+0

예, 상황에 따라 잘 작동합니다. – iAmClownShoe

+0

감사합니다. 친구 ... 시도해 보겠습니다. –

관련 문제