jQuery UI的Sortable containment 选项

  • Post category:jquery

jQuery UI Sortable containment 选项

jQuery UI Sortable是一个可排序的插件,它允许用户通过拖动元素来重新排列它们的顺序。containment选项允许限制拖动的范围,以确保元素只能在指定的区域内拖动。在本文中,我们将详细介绍jQuery Sortable containment选项的用法。

语法

以下是使用jQuery UI Sortable containment选项的语法:

$(selector).sortable({
  containment: "parent"
});

其中,selector是要使其可排序的元素的选择器,containment是选项名称,"parent"是选项值,表示元素只能在其父元素内拖动。

示例1:限制拖动范围为父元素

以下是一个将拖动范围限制为父元素的示例:

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>jQuery UI Sortable containment选项示例</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.13.0/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-3.6.0.min.js"></script>
  <script src="//code.jquery.com/ui/1.13.0/jquery-ui.min.js"></script>
  <script>
    $(function() {
      $("#sortable").sortable({
        containment: "parent"
      });
    });
  </script>
</head>
<body>
  <div style="width: 300px; height: 300px; border: 1px solid #ccc;">
    <ul id="sortable">
      <li>Item 1</li>
      <li>Item 2</li>
      <li>Item 3</li>
      <li>Item 4</li>
      <li>Item 5</li>
    </ul>
  </div>
</body>
</html>

在上面的示例中,我们首先引入了jQuery和jQuery UI库。然后,我们创建了一个<div>元素,并在其中创建了一个可排序的<ul>元素。接下来,我们使用sortable()方法使其可排序,并使用containment选项将拖动范围限制为父元素。

示例2:限制拖动范围为指定元素

以下是一个将拖动范围限制为指定元素的示例:

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>jQuery UI Sortable containment选项示例</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.13.0/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-3.6.0.min.js"></script>
  <script src="//code.jquery.com/ui/1.13.0/jquery-ui.min.js"></script>
  <script>
    $(function() {
      $("#sortable").sortable({
        containment: "#container"
      });
    });
  </script>
</head>
<body>
  <div id="container" style="width: 300px; height: 300px; border: 1px solid #ccc;">
    <ul id="sortable">
      <li>Item 1</li>
      <li>Item 2</li>
      <li>Item 3</li>
      <li>Item 4</li>
      <li>Item 5</li>
    </ul>
  </div>
</body>
</html>

在上面的示例中,我们首先引入了jQuery和jQuery UI库。然后,我们创建了一个<div>元素,并在其中创建了一个可排序的<ul>元素。接下来,我们使用sortable()方法使其可排序,并使用containment选项将拖动范围限制为#container元素。

总结

jQuery UI Sortable containment选项允许我们限制拖动的范围,以确保元素只能在指定的区域内拖动。我们可以将拖动范围限制为父元素或指定的元素。在实际开发中,我们可以根据需要使用containment选项,并进行相应的操作。