jQuery UI,可拖动的子div大于父级

时间:2011-09-30 08:27:47

标签: jquery jquery-ui draggable parent

我查看了几篇文章,并尝试了所有提出的方法,但尚未找到解决方案。

我正在尝试创建一个可拖动的地图,但是当它自己的边缘遇到父边缘时会停止。孩子比父母大,所以我尝试了所有不同类型的方法来解决这个问题,但还没有找到解决方案。

下面的示例显示了黑色边框内不应有任何空白区域的示例。我尝试过几种不同的遏制措施,但还没有弄清楚它的数学。

示例:http://jsfiddle.net/LQtCY/3/

由于

1 个答案:

答案 0 :(得分:6)

你试过这个吗?

var parentPos = $('.mapshell').offset();
var childPos = $('.mapcontent_1').offset();

$(".mapcontent_1").draggable({
    drag: function(event, ui) {
        if (ui.position.top > parentPos.top) {
            ui.position.top = parentPos.top;
        }
        if (ui.position.left > parentPos.left) {
            ui.position.left = parentPos.left;
        }
    },

    scroll: false
});

http://jsfiddle.net/LQtCY/6/