JQuery UI 拖放功能详解与应用

需积分: 7 16 下载量 78 浏览量 更新于2024-10-18 收藏 85KB DOC 举报
"jQuery UI中文参考文档" jQuery UI 是一个基于jQuery JavaScript库的用户界面插件集合,它提供了各种丰富的交互式组件,如对话框、拖放功能、可排序列表、日期选择器等,大大简化了网页的用户界面设计。这份中文参考文档详细介绍了jQuery UI中的各个组件和选项,便于开发者理解和应用。 在拖放(Draggable)组件中,jQuery UI允许用户将HTML元素拖动到页面的不同位置,增强了用户与网页的交互性。以下是一些关键的配置选项: 1. `addClass`: 这个选项决定是否在拖放过程中给元素添加特定样式。默认值为`true`,即在拖动时添加样式,可以通过设置`false`来禁用。 2. `appendTo`: 指定拖放元素在拖动时附加到哪个元素。默认值为'parent',意味着拖动的元素会被附加回其父元素。 3. `axis`: 设置拖放限制在X轴或Y轴上。可以设置为'x'或'y',默认值为`false`,表示无限制。 4. `cancel`: 阻止特定元素的拖放行为,例如输入框或选项。默认值是'input,option',可以自定义选择器以排除更多元素。 5. `connectToSortable`: 这个选项允许拖放的元素直接被添加到指定的排序列表(Sortable)中。设置为一个选择器,如'ul#myList',元素就可以被拖放到该列表。 6. `containment`: 限制拖放元素的移动范围,可以设置为选择器、元素、'parent'、'document'、'window'或一组坐标[x1, y1, x2, y2]。例如,设置为'#myList'将使元素只能在#myList区域内拖动。 7. `cursor`: 改变拖动时的鼠标光标样式,可以设置为CSS中的cursor属性值,如'crosshair'。 8. `cursorAt`: 控制拖动时鼠标相对于元素的位置,可以设置为包含'top', 'left', 'right', 'bottom'的对象,例如{left: 5}将使鼠标始终位于元素左边5像素处。 9. `delay`: 设定在按住鼠标按钮后延迟多少毫秒才开始拖动,防止意外触发拖放操作。 10. `distance`: 鼠标移动至少需要达到的像素距离才会启动拖放,防止轻微的鼠标移动就启动拖放行为。 这些选项可以通过JavaScript对象字面量形式传递给`.draggable()`方法,以定制拖放行为。例如: ```javascript $('#draggable').draggable({ addClass: false, appendTo: 'body', axis: 'x', cancel: 'button', connectToSortable: 'ul#myList', containment: '#container', cursor: 'move', cursorAt: {left: 10}, delay: 300, distance: 50 }); ``` 这个例子展示了如何配置一个拖放元素,使其只在X轴方向拖动,不能拖放到按钮元素上,拖动时鼠标显示为“移动”样式,并在鼠标停留300毫秒后开始拖动,且元素只能在#container容器内移动。