- JqueryUI 教程
- JqueryUI - 主页
- JqueryUI - 概述
- JqueryUI - 环境设置
- JqueryUI 小部件
- JqueryUI - 手风琴
- JqueryUI - 自动完成
- JqueryUI - 按钮
- JqueryUI - 日期选择器
- JqueryUI - 对话框
- JqueryUI - 菜单
- JqueryUI - 进度条
- JqueryUI - 滑块
- JqueryUI - 微调器
- JqueryUI - 选项卡
- JqueryUI - 工具提示
- JqueryUI 效果
- JqueryUI - 添加类
- JqueryUI - 彩色动画
- JqueryUI - 效果
- JqueryUI - 隐藏
- JqueryUI - 删除类
- JqueryUI - 显示
- JqueryUI - 切换类
- JqueryUI - 切换
- JqueryUI - 切换类
- JqueryUI 实用程序
- JqueryUI - 位置
- JqueryUI - 部件工厂
- JqueryUI 有用的资源
- JqueryUI - 快速指南
- JqueryUI - 有用的资源
- JqueryUI - 讨论
JqueryUI - 快速指南
JqueryUI - 概述
JqueryUI 是一个强大的 Javascript 库,构建在 jQuery JavaScript 库之上。UI代表用户界面,它是一组jQuery插件,为jQuery核心库添加了新功能。
JqueryUI 中的插件集包括构建在 jQuery JavaScript 库之上的界面交互、效果、动画、小部件和主题。
它于 2007 年 9 月发布,由 John Resig 在 jquery.com 上的一篇博客文章中宣布。最新版本 1.10.4 需要 jQuery 1.6 或更高版本。jQuery UI 是一款免费的开源软件,根据 MIT 许可证获得许可。
特征
JqueryUI 分为四组:交互、小部件、效果、实用程序。这些将在后续章节中详细讨论。库的结构如下图所示 -
交互- 这些是交互式插件,例如拖放、调整大小等,使用户能够与 DOM 元素进行交互。
小部件- 使用 jQuery 插件小部件,您可以创建用户界面元素,如 Accordian、datepicker 等。
效果- 这些是基于内部 jQuery 效果构建的。它们包含一整套 DOM 元素的自定义动画和过渡。
实用程序- 这些是 JqueryUI 库内部使用的一组模块化工具。
JqueryUI 的好处
以下是 Jquery UI 的一些好处 -
- 内聚且一致的 API。
- 全面的浏览器支持。
- 开源且免费使用。
- 良好的文档。
- 强大的主题机制。
- 稳定且易于维护。
JqueryUI - 环境设置
本章将讨论JqueryUI库的下载和设置。我们还将简要研究目录结构及其内容。JqueryUI 库可以在网页中以两种方式使用 -
从其官方网站下载 UI 库
当您打开链接http://jqueryui.com/时,您将看到下载 JqueryUI 库的三个选项 -
自定义下载- 单击此按钮可下载库的自定义版本。
稳定- 单击此按钮可获得 JqueryUI 库的稳定和最新版本。
旧版- 单击此按钮可获得 JqueryUI 库的先前主要版本。
使用下载生成器自定义下载
使用下载生成器,您可以创建自定义构建以仅包含您需要的库部分。您可以根据所选主题下载这个新的自定义版本的 JqueryUI。您将看到以下屏幕(同一页面分为两个图像) -
当您只需要 JqueryUI 库的特定插件或功能时,这非常有用。该版本的目录结构如下图所示 -
未压缩的文件位于development-bundle目录中。未压缩的文件最好在开发或调试时使用;压缩文件可以节省带宽并提高生产性能。
下载稳定
单击“稳定”按钮,将直接转到包含最新版本 JqueryUI 库的源代码、示例和文档的 ZIP 文件。将 ZIP 文件内容提取到jqueryui目录。
该版本包含所有文件,包括所有依赖项、大量演示,甚至是库的单元测试套件。该版本有助于入门。
旧版下载
单击“Legacy”按钮,将直接指向 JqueryUI 库之前主要版本的 ZIP 文件。该版本还包含所有文件,包括所有依赖项、大量演示,甚至是库的单元测试套件。此版本有助于您入门。
从 CDN 下载 UI 库
CDN 或内容交付网络是旨在为用户提供文件服务的服务器网络。如果您在网页中使用 CDN 链接,则会将托管文件的责任从您自己的服务器转移到一系列外部服务器。这还提供了一个优点,即如果网页的访问者已经从同一 CDN 下载了 JqueryUI 的副本,则无需重新下载。
jQuery 基金会、Google 和Microsoft都提供托管 jQuery 核心和 jQuery UI 的 CDN。
由于 CDN 不需要您托管自己的 jQuery 和 jQuery UI 版本,因此它非常适合演示和实验。
我们在本教程中使用该库的 CDN 版本。
例子
现在让我们使用 JqueryUI 编写一个简单的示例。让我们创建一个 HTML 文件,将以下内容复制到 <head> 标签 -
<link href = "https://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css" rel = "stylesheet"> <script src = "https://code.jquery.com/jquery-1.10.2.js"></script> <script src = "https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
上述代码的详细信息是 -
第一行通过 CSS 添加 jQuery UI 主题(在我们的例子中为ui-lightness)。这个 CSS 将使我们的 UI 变得时尚。
第二行,添加 jQuery 库,因为 jQuery UI 是构建在 jQuery 库之上的。
第三行,添加 jQuery UI 库。这将在您的页面中启用 jQuery UI。
现在让我们向 <head> 标签添加一些内容 -
<script type = "text/javascript"> $(function () { $('#dialogMsg').dialog(); }); </script>
在<body>中添加这个 -
<body> <form id = "form1" runat = "server"> <div id = "dialogMsg" title = "First JqueryUI Example"> Hello this is my first JqueryUI example. </div> </form> </body>
完整的HTML代码如下。将其另存为myfirstexample.html
<!DOCTYPE html> <html> <head> <link href = "https://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css" rel = "stylesheet"> <script src = "https://code.jquery.com/jquery-1.10.2.js"></script> <script src = "https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script> <script type = "text/javascript"> $(function () { $('#dialogMsg').dialog(); }); </script> </head> <body> <form id = "form1" runat = "server"> <div id = "dialogMsg" title = "First JqueryUI Example"> Hello this is my first JqueryUI example. </div> </form> </body> </html>
在浏览器中打开上述页面。它将产生以下屏幕。
JqueryUI - 可拖动
jQueryUI 提供了draggable()方法来使任何DOM 元素可拖动。一旦元素可拖动,您就可以通过用鼠标单击该元素并将其拖动到视口中的任意位置来移动该元素。
句法
Draggable ()方法可以以两种形式使用 -
$(selector, context).draggable(options) 方法
Draggable (options)方法声明一个HTML元素可以在HTML页面中移动。options参数是一个对象,它指定所涉及元素的Behave。
句法
$(selector, context).draggable(options);
您可以使用 Javascript 对象一次提供一个或多个选项。如果要提供多个选项,那么您将使用逗号分隔它们,如下所示 -
$(selector, context).draggable({option1: value1, option2: value2..... });
下表列出了可以与此方法一起使用的不同选项-
先生。 | 选项和说明 |
---|---|
1 | 添加类
如果此选项设置为false,它将阻止ui-draggable类添加到所选 DOM 元素列表中。默认情况下它的值为true。 |
2 | 附加到
指定拖动时应将可拖动帮助器附加到的元素。默认情况下它的值为“parent”。 |
3 | 轴
此选项限制拖动到水平 (x) 或垂直 (y) 轴。可能的值:“x”、“y”。 |
4 | 取消
您可以使用此选项来防止从指定元素开始拖动。默认情况下,其值为“输入、文本区域、按钮、选择、选项”。 |
5 | 连接到可排序
您可以使用此选项来指定其元素可互换的列表。在放置结束时,该元素是列表的一部分。默认情况下其值为“false”。 |
6 | 遏制
将拖动限制在指定元素或区域的范围内。默认情况下其值为“false”。 |
7 | 光标
指定元素移动时光标的 CSS 属性。它代表鼠标指针的形状。默认情况下,其值为“自动”。 |
8 | 光标处
设置拖动助手相对于鼠标光标的偏移。坐标可以使用一个或两个键的组合以散列形式给出:{top、left、right、bottom}。默认情况下其值为“false”。 |
9 | 延迟
延迟(以毫秒为单位),之后考虑鼠标的第一次移动。位移可能会在该时间之后开始。默认情况下其值为“0”。 |
10 | 残疾人
设置为 true 时,将禁用移动项目的功能。除非启用此功能(使用可拖动(“启用”)指令),否则无法移动项目。默认情况下其值为“false”。 |
11 | 距离
在考虑位移之前鼠标必须移动的像素数。默认情况下其值为“1”。 |
12 | 网格
将拖动助手捕捉到网格,每个 x 和 y 像素。该数组必须采用 [ x, y ] 形式。默认情况下其值为“false”。 |
13 | 处理
如果指定,则限制从开始拖动,除非在指定元素上发生鼠标按下。默认情况下其值为“false”。 |
14 | 帮手
允许使用辅助元素来拖动显示。默认情况下,其值为“原始”。 |
15 | iframe修复
防止 iframe 在拖动过程中捕获 mousemove 事件。默认情况下其值为“false”。 |
16 | 不透明度
移动时元素移动的不透明度。默认情况下其值为“false”。 |
17 号 | 刷新位置
如果设置为true,则每次鼠标移动时都会计算所有可放置位置。默认情况下其值为“false”。 |
18 | 恢复
指示元素是否在移动结束时移回其原始位置。默认情况下其值为“false”。 |
19 | 恢复持续时间
元素返回到其原始位置之前的位移持续时间(以毫秒为单位)(请参阅 options.revert)。默认情况下其值为“500”。 |
20 | 范围
除了 droppable 的接受选项之外,还用于对可拖动和可放置的项目集进行分组。默认情况下,其值为“默认”。 |
21 | 滚动
当设置为true(默认值)时,如果项目移到窗口可视区域之外,显示将滚动。默认情况下其值为“true”。 |
22 | 滚动灵敏度
指示鼠标必须退出窗口多少像素才能导致显示滚动。默认情况下其值为“20”。 |
23 | 滚动速度
指示滚动开始后显示屏的滚动速度。默认情况下其值为“20”。 |
24 | 折断
调整在其他元素(飞行的)上移动的项目的显示。默认情况下其值为“false”。 |
25 | 捕捉模式
指定如何在移动的元素和options.snap中指示的元素之间进行调整。默认情况下,其值为“两者”。 |
26 | 咬合公差
建立调整所需的位置差异的最大像素数。默认情况下其值为“20”。 |
27 | 堆
控制与选择器匹配的元素集的 z-index,始终将当前拖动的项目置于前面。在窗口管理器等方面非常有用。默认情况下其值为“false”。 |
28 | z索引
被拖动时助手的 Z 索引。默认情况下其值为“false”。 |
以下部分将向您展示拖动功能的一些工作示例。
默认功能
以下示例演示了一个不向draggable()方法传递任何参数的draggable 功能的简单示例。
<!DOCTYPE html> <html> <head> <link href = "https://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css" rel = "stylesheet"> <script src = "https://code.jquery.com/jquery-1.10.2.js"></script> <script src = "https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script> <style> #draggable { width: 150px; height: 150px; padding: 0.5em; background:#eee;} </style> <script> $(function() { $( "#draggable" ).draggable(); }); </script> </head> <body> <div id = "draggable" class = "ui-widget-content"> <p>Drag me !!!</p> </div> </body> </html>
让我们将上面的代码保存在 HTML 文件Dragexample.htm中,并在支持 JavaScript 的标准浏览器中打开它。您还必须看到以下输出。现在,您可以使用结果 -
使用禁用、距离和延迟
下面的示例展示了JqueryUI 的拖动功能中三个重要选项(a)禁用(b)延迟和(c)距离的用法。
<!DOCTYPE html> <html> <head> <link href = "https://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css" rel = "stylesheet"> <script src = "https://code.jquery.com/jquery-1.10.2.js"></script> <script src = "https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script> </head> <body> <div id = "div1" style = "border:solid 1px;background-color:gainsboro;"> <span>You can't move me!</span><br /><br /> </div> <div id = "div2" style = "border:solid 1px;background-color:grey;"> <span> Dragging will start only after you drag me for 50px </span> <br /><br /> </div> <div id = "div3" style = "border:solid 1px;background-color:gainsboro;"> <span> You have to wait for 500ms for dragging to start! </span> <br /><br /> </div> <script> $("#div1 span").draggable ( { disabled: true } ); $("#div2 span").draggable ( { distance: 50 } ); $("#div3 span").draggable ( { delay: 500 } ); </script> </body> </html>
让我们将上面的代码保存在 HTML 文件Dragexample.htm中,并在支持 JavaScript 的标准浏览器中打开它,您应该看到以下输出。现在,您可以使用结果 -
限制运动
下面的示例展示了如何使用 JqueryUI 的拖动功能中的包含选项来限制屏幕上元素的移动。
<!DOCTYPE html> <html> <head> <link href = "https://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css" rel = "stylesheet"> <script src = "https://code.jquery.com/jquery-1.10.2.js"></script> <script src = "https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script> </head> <body> <div id = "div4" style = "border:solid 1px;background-color:gainsboro;"> <span>You can drag me only within this div.</span><br /><br /> </div> <div id = "div5" style = "border:solid 1px;background-color:grey;"> <span>You can drag me only along x axis.</span><br /><br /> </div> <script> $("#div4 span").draggable ({ containment : "#div4" }); $("#div5 span").draggable ({ axis : "x" }); </script> </body> </html>
让我们将上面的代码保存在 HTML 文件Dragexample.htm中,并在支持 JavaScript 的标准浏览器中打开它。它应该产生以下输出。现在,您可以使用输出 -
这里,<span>元素被阻止超出ID为div4的<div>。您还可以使用值为“x”或“y”的选项轴对垂直或水平运动施加约束,这也得到了演示。
通过复制来移动内容
以下示例演示如何移动作为所选元素的克隆的项目。这是使用带有值clone的选项帮助器完成的。
<!DOCTYPE html> <html> <head> <link href = "https://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css" rel = "stylesheet"> <script src = "https://code.jquery.com/jquery-1.10.2.js"></script> <script src = "https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script> </head> <body> <div id = "div6" style = "border:solid 1px;background:#eee; height:50px;"> <span>You can duplicate me....</span> </div> <script> $("#div6 span").draggable ({ helper : "clone" }); </script> </body> </html>
让我们将上面的代码保存在 HTML 文件Dragexample.htm中,并在支持 JavaScript 的标准浏览器中打开它,您还必须看到以下输出 -
正如您所看到的,当拖动第一个元素时,只有克隆的元素移动,而原始项目保持不变。如果释放鼠标,克隆的元素就会消失,而原始项目仍位于其原始位置。
获取当前期权价值
以下示例演示了如何在脚本执行期间随时获取任何选项的值。这里我们将读取执行时设置的cursor和cursorAt选项的值。以类似的方式,您可以获得任何其他可用选项的价值。
<!DOCTYPE html> <html> <head> <link href = "https://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css" rel = "stylesheet"> <script src = "https://code.jquery.com/jquery-1.10.2.js"></script> <script src = "https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script> </head> <body> <div id = "divX" style = "border:solid 1px;background:#eee; height:50px;"> <span>Click anywhere on me to see cursor type...</span> </div> <script> /* First make the item draggable */ $("#divX span").draggable(); $("#divX span").bind('click', function( event ) { var cursor = $( "#divX span" ).draggable( "option", "cursor" ); var cursorAt = $( "#divX span" ).draggable( "option", "cursorAt" ); alert("Cursor type - " + cursor + ", cursorAt - " + cursorAt); }); </script> </body> </html>
让我们将上面的代码保存在 HTML 文件Dragexample.htm中,并在支持 JavaScript 的标准浏览器中打开它,您还必须看到以下输出 -
$(selector, context).draggable("action", [params]) 方法
Draggable (action, params)方法可以对可移动元素执行操作,例如防止位移。该操作在第一个参数中指定为字符串,并且可以根据给定的操作提供一个或多个参数(可选)。
基本上,这里的操作什么都不是,只是我们可以以字符串形式使用的 jQuery 方法。
句法
$(selector, context).draggable ("action", [params]);
下表列出了此方法的操作 -
先生。 | 动作与描述 |
---|---|
1 | 破坏()
完全删除拖动功能。这些元素不再可移动。这将使元素返回到其预初始化状态。 |
2 | 禁用()
禁用拖动功能。在下次调用draggable("enable") 方法之前,元素无法移动。 |
3 | 使能够()
重新激活拖动管理。元素可以再次移动。 |
4 | 选项(选项名称)
获取当前与指定optionName关联的值。其中optionName是要获取的选项的名称,并且类型为String。 |
5 | 选项()
获取一个对象,其中包含表示当前可拖动选项哈希的键/值对。 |
6 | 选项(选项名称,值)
设置与指定optionName关联的可拖动选项的值。其中optionName是要设置的选项的名称,value是要为该选项设置的值。 |
7 | 选项(选项)
为可拖动设置一个或多个选项。其中options是要设置的选项值对的映射。 |
8 | 小部件()
返回包含可拖动元素的 jQuery 对象。 |
例子
现在让我们看一个使用上表中的操作的示例。以下示例演示了操作disable和enable的使用。
<!DOCTYPE html> <html> <head> <link href = "https://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css" rel = "stylesheet"> <script src = "https://code.jquery.com/jquery-1.10.2.js"></script> <script src = "https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script> </head> <body> <div id = "div7" style = "border:solid 1px;background-color:gainsboro;"> <span>You can't move me. Dragging is disabled.</span><br><br> </div> <div id = "div8" style = "border:solid 1px;background-color:grey;"> <span>You can move me. Dragging is enabled.</span><br><br> </div> <script> $("#div7 span").draggable (); $("#div7 span").draggable ('disable'); $("#div8 span").draggable (); $("#div8 span").draggable ('enable'); </script> </body> </html>
让我们将上面的代码保存在 HTML 文件Dragexample.htm中,并在支持 JavaScript 的标准浏览器中打开它,您应该看到以下输出 -
如您所见,第一个元素已禁用,第二个元素的拖动已启用,您可以尝试拖动。
已移动元素的事件管理
除了我们在前面几节中看到的可拖动(选项)方法之外,JqueryUI 还提供了针对特定事件触发的事件方法。下面列出了这些事件方法 -
先生。 | 活动方式及说明 |
---|---|
1 | 创建(事件,用户界面)
创建可拖动对象时触发。其中event的类型为Event,而ui的类型为Object。 |
2 | 拖动(事件,用户界面)
当鼠标在拖动过程中移动时触发。其中event是Event类型,而ui是Object类型,例如 helper、position、offset。 |
3 | 开始(事件,用户界面)
开始拖动时触发。其中event是Event类型,而ui是Object类型,例如 helper、position、offset。 |
4 | 停止(事件,用户界面)
拖动停止时触发。其中event是Event类型,而ui是Object类型,例如 helper、position、offset。 |
例子
以下示例演示了在拖动功能期间使用事件方法。此示例演示了拖动事件的使用。
<!DOCTYPE html> <html> <head> <link href = "https://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css" rel = "stylesheet"> <script src = "https://code.jquery.com/jquery-1.10.2.js"></script> <script src = "https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script> </head> <body> <div id = "div9" style = "border:solid 1px;background-color:gainsboro;"> <span>Drag me to check the event method firing</span><br /><br /> </div> <script> $("#div9 span").draggable ({ cursor: "move", axis : "x", drag: function( event, ui ) { alert("hi.."); } }); </script> </body> </html>
让我们将上面的代码保存在 HTML 文件Dragexample.htm中,并在支持 JavaScript 的标准浏览器中打开它,您应该得到以下输出 -
现在尝试拖动写入的内容,您将看到拖动事件的开始被触发,这会导致显示一个对话框,并且光标将更改为移动图标,并且文本将仅在 X 轴上移动。
JqueryUI - 可删除
jQueryUI 提供droppable()方法来使任何 DOM 元素可放置在指定的目标(可拖动元素的目标)。
句法
droppable ()方法可以以两种形式使用 -
$(selector, context).droppable(options) 方法
droppable (options)方法声明一个 HTML 元素可以用作可以在其中删除其他元素的元素。options参数是一个对象,它指定所涉及元素的Behave。
句法
$(selector, context).droppable (options);
您可以使用 Javascript 对象一次提供一个或多个选项。如果要提供多个选项,那么您将使用逗号分隔它们,如下所示 -
$(selector, context).droppable({option1: value1, option2: value2..... });
下表列出了可以与此方法一起使用的不同选项-
先生。 | 选项和说明 |
---|---|
1 | 接受
当您需要控制接受放置哪些可拖动元素时,请使用此选项。默认情况下其值为*。
|
2 | 活动类
此选项是一个字符串,表示当拖动接受的元素( options.accept中指示的元素之一)时要添加到可放置元素的一个或多个 CSS 类。默认情况下它的值为false。 |
3 | 添加类
当此选项设置为false时,将阻止ui-droppable类添加到可放置元素中。默认情况下它的值为true。 |
4 | 残疾人
当此选项设置为true时,将禁用可删除项。默认情况下它的值为false。 |
5 | 贪婪的
当您需要控制接受哪些可拖动元素放置在嵌套可放置对象上时,请使用此选项。默认情况下它的值为false。如果此选项设置为true,则任何父 droppables 将不会接收该元素。 |
6 | 悬停类
此选项是String ,表示当接受的元素(在options.accept中指示的元素)移动到 droppable 元素中时,要添加到该元素的一个或多个 CSS 类。默认情况下它的值为false。 |
7 | 范围
此选项用于将可拖动元素的可放置操作限制为仅具有相同options.scope(在draggable(选项)中定义)的项目。默认情况下,其值为“default”。 |
8 | 宽容
此选项是一个字符串,指定使用哪种模式来测试可拖动项是否悬停在可放置项上。默认情况下它的值为"intersect"。 |
以下部分将向您展示放置功能的一些工作示例。
默认功能
以下示例演示了可删除功能的简单示例,不向droppable()方法传递任何参数。
<!doctype html> <html lang = "en"> <head> <meta charset = "utf-8"> <title>jQuery UI Droppable - Default functionality</title> <link href = "https://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css" rel = "stylesheet"> <script src = "https://code.jquery.com/jquery-1.10.2.js"></script> <script src = "https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script> <style> #draggable-1 { width: 100px; height: 50px; padding: 0.5em; float: left; margin: 22px 5px 10px 0; } #droppable-1 { width: 120px; height: 90px;padding: 0.5em; float: left; margin: 10px; } </style> <script> $(function() { $( "#draggable-1" ).draggable(); $( "#droppable-1" ).droppable(); }); </script> </head> <body> <div id = "draggable-1" class = "ui-widget-content"> <p>Drag me to my target</p> </div> <div id = "droppable-1" class = "ui-widget-header"> <p>Drop here</p> </div> </body> </html>
让我们将上面的代码保存在 HTML 文件dropexample.htm中,并在支持 JavaScript 的标准浏览器中打开它,您应该看到以下输出。现在,您可以使用结果 -
addClass、disabled和tolerance的使用
下面的示例演示了JqueryUI 的 drop 函数中三个选项(a)addClass(b)disabled和(c)tolerance的用法。
<!doctype html> <html lang = "en"> <head> <meta charset = "utf-8"> <title>jQuery UI Droppable - Default functionality</title> <link href = "https://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css" rel = "stylesheet"> <script src = "https://code.jquery.com/jquery-1.10.2.js"></script> <script src = "https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script> <style> #draggable-2 { width: 100px; height: 50px; padding: 0.5em; margin: 0px 5px 10px 0; } #droppable-2,#droppable-3, #droppable-4,#droppable-5 { width: 120px; height: 90px;padding: 0.5em; float: left; margin: 10px; } </style> <script> $(function() { $( "#draggable-2" ).draggable(); $( "#droppable-2" ).droppable({ drop: function( event, ui ) { $( this ) .addClass( "ui-state-highlight" ) .find( "p" ) .html( "Dropped!" ); } }); $( "#droppable-3" ).droppable({ disabled : "true", drop: function( event, ui ) { $( this ) .addClass( "ui-state-highlight" ) .find( "p" ) .html( "Dropped!" ); } }); $( "#droppable-4" ).droppable({ tolerance: 'touch', drop: function( event, ui ) { $( this ) .addClass( "ui-state-highlight" ) .find( "p" ) .html( "Dropped with a touch!" ); } }); $( "#droppable-5" ).droppable({ tolerance: 'fit', drop: function( event, ui ) { $( this ) .addClass( "ui-state-highlight" ) .find( "p" ) .html( "Dropped only when fully fit on the me!" ); } }); }); </script> </head> <body> <div id = "draggable-2" class = "ui-widget-content"> <p>Drag me to my target</p> </div> <div id = "droppable-2" class = "ui-widget-header"> <p>Drop here</p> </div> <div id = "droppable-3" class = "ui-widget-header"> <p>I'm disabled, you can't drop here!</p> </div> <div id = "droppable-4" class = "ui-widget-header"&g