可拖动约束
Draggable constraints?
我发现了这两个非常简单的可拖动div
代码块:link1 和 link2
如何在没有 jQuery UI 的情况下使用 JS/jQuery 将 x 轴上的移动限制为屏幕宽度?
我确实搜索过,但我只有对jQuery UI的引用。怎么自己做?
我将基于您链接到的第一个代码片段。
为了将div 限制为水平移动,您需要做的就是删除设置top
偏移量的代码部分!
之后,将div 约束到窗口的边界需要一些思考。当前偏移div(e.pageX + pos_x - drg_w
)的坐标对应于div的左上角。我们永远不希望它超过窗口的最左边的边界,或者x=0
。在数学上执行此操作的一个好方法是使用 Math.max
函数,它将返回两个值中较大的一个。
left: Math.max(e.pageX + pos_x - drg_w, 0)
现在我们需要检查窗口的右边框。我们取右边界的坐标($(window).width()
)并减去div的宽度,因为我们正在检查div的右边缘。相应地,在这种情况下,Math.min
可以起到很大的作用。
现在一起,
$('.draggable').offset({
left: Math.min($(window).width() - drg_w, Math.max(e.pageX + pos_x - drg_w, 0))
})
还有那些微小变化的代码笔。:)
相关文章:
- 调整窗口大小时,可拖动的对象会出现在容器外部
- 删除对HTML元素的拖动
- jQuery UI可排序-多连接列表拖动
- 禁用SVG拖动
- 旋转后拖动对象
- JQuery UI可拖动潜水与滚动棒到鼠标
- jsPlumb-拖动克隆而不进行复制
- 当我在节点上拖动鼠标时,我如何防止使用d3.ehavior.zoom().on(“缩放”,重绘)
- 如何使元素在可拖动元素内可单击
- 如何在使用Kinetic拖动同一对象后,在旋转动画中保持先前的偏移
- 在d3中拖动一条线
- 使元素在iframe中可拖动
- 在Matter.js中隐藏绿色约束拖动轨迹
- jQuery可拖动约束到父对象'的父级
- 可拖动约束
- 在拉斐尔.js和缩放中拖动约束
- 三.js约束对象拖动到另一个对象的表面
- jquery-ui将可拖动元素约束在较小的容器中
- 约束和可拖动项目没有出现在顶部-版本II
- 在jQuery中使用像素约束恢复可拖动对象