Open In App

jQuery UI Draggable containment Option

Last Updated : 25 Jan, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

jQuery UI consists of GUI widgets, visual effects, and themes implemented using the jQuery JavaScript Library. jQuery UI is great for building UI interfaces for the webpages. It can be used to build highly interactive web applications or can be used to add widgets easily. 

In this article, we are going to learn the jQuery UI Draggable containment Option. The containment option is used to set that the draggable items will be contained in the specified container.

Syntax: The containment option takes an element as string, jquery, element and is initialized as follows:

$(".drag").draggable({
    containment: "#gfg_container",
});
  • Get the containment option:

    var containmentOpt = $(".drag")
        .draggable( "option", "containment");
  • Set the containment option:

    $(".drag").draggable( "option", 
        "containment", "#gfg_container");

CDN Links: Use the following CDNs for the jQuery UI project.

<link rel=”stylesheet” href=”https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.css” />
<script src=”https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js”></script>
<script src=”https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js”></script>

Example: In the following example, the items are contained inside the container with the id “gfg_container“.

HTML




<!DOCTYPE html>
<html lang="en">
  
<head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" 
          content="IE=edge" />
    <meta name="viewport" 
          content="width=device-width, initial-scale=1.0" />
    <link rel="stylesheet" 
          href=
    <script src=
    </script>
    <script src=
    </script>
    <style type="text/css">
    .drag {
        width: 50px;
        height: 50px;
        line-height: 50px;
        border: 1px solid black;
        cursor: pointer;
        border-radius: 10px;
        text-align: center;
        background-color: lightgreen;
    }
  
    .container {
        background-color: darkgreen;
        width: 200px;
        height: 200px;
        margin: auto;
    }
    </style>
</head>
  
<body>
    <div data-role="page" id="gfgpage">
        <h1 style="color: green;">
            GeeksforGeeks
        </h1>
        <div data-role="main" class="ui-content">
            <h3>jQuery UI Draggable containment option</h3>
            <div id="gfg_container" 
                 class="container">
                <div class="drag" 
                     style="left:20px;top:20px;">
                  Box 1
                </div>
                <div class="drag" 
                     style="left:20px;top:30px;
                            background-color:lightgray">
                  Box 2
               </div>
            </div>
        </div>
    </div>
    <script>
    $(".drag").draggable({
        containment: "#gfg_container",
        snap: true,
    });
    </script>
</body>
  
</html>


Output:

jQuery UI Draggable containment Option

jQuery UI Draggable containment Option

Reference: https://api.jqueryui.com/draggable/#option-containment



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads