gpt4 book ai didi

javascript - 父宽度和高度区域中的轻量级可拖动锁

转载 作者:行者123 更新时间:2023-12-03 12:18:47 26 4
gpt4 key购买 nike

发现了一个lightway可拖动的功能。如何锁定父区域中的可拖动黑色 block ?我需要设置宽度和高度来限制黑色 block 区域吗?

在线样本http://jsfiddle.net/zqYZG/

.drag {
width: 100px;
height: 100px;
background-color: #000;
}
.box{
width: 500px;
height: 400px;
background-color:red;
}

jQuery

(function($) {
$.fn.draggable = function(options) {
var $handle = this,
$draggable = this;

options = $.extend({}, {
handle: null,
cursor: 'move'
}, options);

if( options.handle ) {
$handle = $(options.handle);
}

$handle
.css('cursor', options.cursor)
.on("mousedown", function(e) {
var x = $draggable.offset().left - e.pageX,
y = $draggable.offset().top - e.pageY,a
z = $draggable.css('z-index');

$draggable.css('z-index', 100000);

$(document.documentElement)
.on('mousemove.draggable', function(e) {
$draggable.offset({
left: x + e.pageX,
top: y + e.pageY
});
})
.one('mouseup', function() {
$(this).off('mousemove.draggable');
$draggable.css('z-index', z);
});

// disable selection
e.preventDefault();
});
};
})(jQuery);

$('.drag').draggable();

最佳答案

这里有一个简单的方法,使用 getBoundingClientRect() 函数:updated JSFiddle

这只是将原始代码中的 lt 变量限制在父节点的维度内。

关于javascript - 父宽度和高度区域中的轻量级可拖动锁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24544602/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com