jQuery UI (4)Jquery UI Selectable 选择插件

使用鼠标选择单个元素或一组元素。

依赖:

注释:jQuery UI 可选择(Selectable)插件允许通过鼠标拖拽选择元素(有时被称为一个套索)。可以在按住 ctrl/meta 键的同时单击或拖动来选择多个(不连续的)元素。

附加说明:该部件要求一些功能性的 CSS,否则将无法工作。如果您创建了一个自定义的主题,请使用小部件指定的 CSS 文件作为起点。

快速导航

选项

  • appendTo:选择助手(套索)要被添加到哪一个元素。
  • autoRefresh:该选项决定是否在每个选择操作的开始时更新(重新计算)每个选择项的位置和尺寸。如果您有多个项目,您可能要设置该选项为 false,并手动调用 refresh() 方法。
  • cancel:防止从匹配选择器的元素上开始选择。
  • delay:鼠标按下后直到选择开始的时间,以毫秒计。该选项可以防止点击在某个元素上时不必要的选择。
  • disabled:如果设置为 true,则禁用该 selectable。
  • distance:鼠标按下后选择开始前必须移动的距离,以像素计。如果指定了该选项,选择只有在鼠标拖拽超出指定距离时才会开始。该选项可以防止点击在某个元素上时不必要的选择。
  • filter:要制作选择项(可被选择的)的匹配的子元素。
  • tolerance:指定用于测试套索是否选择一个项目的模式。可能的值:
    • "fit":套索完全重叠在项目上。
    • "touch":套索重叠在项目上,任何比例皆可。

方法

  • destroy():完全移除 selectable 功能。这会把元素返回到它的预初始化状态。
  • disable():禁用 selectable。
  • enable():启用 selectable。
  • option():获取当前与指定的 optionName 关联的值。
  • refresh():更新每个选择项元素的位置和尺寸。当 autoRefresh 选项被设置为 false 时,该方法可用于手动重新计算每个选择项的位置和尺寸。
  • widget():返回一个包含 selectable 元素的 jQuery 对象。

事件

  • create( event, ui ):当 selectable 被创建时触发。
  • selected( event, ui ):当每个元素被添加选择时,在选择操作结尾触发。
  • selecting( event, ui ):当每个元素被添加选择时,在选择操作期间触发。
  • start( event, ui ):在选择操作开头触发。
  • stop( event, ui ):在选择操作结尾触发。
  • unselected( event, ui ):当每个元素从选择中被移除时,在选择操作结尾触发。
  • unselecting( event, ui ):当每个元素从选择中被移除时,在选择操作期间触发。

实例

一个简单的 jQuery UI 可选择小部件(Selectable Widget)。

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>可选择小部件(Selectable Widget)演示</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
  <style>
  #selectable .ui-selecting {
    background: #ccc;
  }
  #selectable .ui-selected {
    background: #999;
  }
  </style>
  <script src="//code.jquery.com/jquery-1.10.2.js"></script>
  <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
</head>
<body>
 
<ul id="selectable">
  <li>Item 1</li>
  <li>Item 2</li>
  <li>Item 3</li>
  <li>Item 4</li>
  <li>Item 5</li>
</ul>
 
<script>
$( "#selectable" ).selectable();
</script>
 
</body>
</html>

查看演示

原文地址:https://www.cnblogs.com/springsnow/p/9461703.html