0
我有以下HTML結構:如何限制在這種情況下,可拖動的div
HTML
<div id="outer">
<div id="inner">
<div id="bounds">
<div id="myimage">
</div>
</div>
</div>
</div>
CSS
#outer
{
border: solid 1px red;
padding: 50px 30px 50px 30px;
float: left;
}
#inner
{
width: 300px;
height: 300px;
border: solid 1px black;
overflow:hidden;
position:relative;
}
#myimage
{
background-image:url('http://upload.wikimedia.org/wikipedia/commons/9/9a/Sample_Floorplan.jpg');
background-position : 0,0;
background-repeat:no-repeat;
width: 648px; /*TODO : size will be dynamic*/
height: 438px; /*TODO : size will be dynamic*/
position:relative;
}
JS
$("#myimage").draggable(); //{ containment: "#bounds" }
//$("#bounds").width(); //? value
//$("#bounds").height(); //? value
//$("#bounds").css("left",""); //? value
//$("#bounds").height("top","");? value
一個「內部」div有一個可拖動子div與background-image
。
內部div有overflow:hidden
。我需要的是限制圖像的拖動,以便整個圖像可以滾動,但圖像不應該完全從「內部」div中拖出(圖像的某些部分必須始終保持可見狀態)。
這就是爲什麼我加了bounds
股利。我如何定義div的尺寸和位置,這使我能夠限制圖像的移動。
,這樣我可以寫
$("#myimage").draggable({ containment: "#bounds" });
http://api.jqueryui.com/draggable/#option-containment
是的,但我希望它是動態的基於圖像的尺寸。 – Amitd
編輯答案 –
爲什麼我們需要一個'遏制'div的任何理由?是否有可能調整「邊界」div而不是 – Amitd