Seamless drag effect code across containers implemented by jQuery
- 2021-06-29 09:57:44
- OfStack
This paper illustrates the seamless dragging across containers implemented by jQuery.Share it for your reference, as follows:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>New Web Project</title>
<link type = "text/css" href = "jquery-ui.css" rel = "stylesheet"/>
<style type = "text/css">
.EZ_SITE{width:990px; position: relative; margin:0px auto; top:30px;}
.EZ_SITE_HEADER{width:990px; position: absolute; height:80px; border:1px solid red;}
.ez_site_border{position: absolute; width:100%; height:100%; background-color:#000;}
.ez_site_background{position: absolute; width:100%; height:100%;background-color:#fff; margin:0px;}
.EZ_SITE_PAGE{width:990px; height:500px; position: absolute;top:82px;border:1px solid blue;}
.ez_page_content{width:100%; height:100%; position: absolute;}
.EZ_SITE_FOOTER{width:990px; position: absolute; height:80px; top:580px;border:1px solid green;}
#dragMe{
position:absolute;
top:100px;
left:100px;
width:100px;
height:50px;
border:1px solid green;
line-height:50px;
cursor:move;
text-align: center;
z-index:999;
background:#008800;
}
.box{
position:absolute;
top:100px;
left:300px;
width:300px;
height:200px;
border:1px solid blue;
line-height:200px;
cursor:move;
text-align: center;
z-index:990;
background:#ddd;
}
</style>
<script type = "text/javascript" src = "jquery-1.7.1.min.js"> </script>
<script type = "text/javascript" src="jquery-ui.js"> </script>
<script type = "text/javascript">
$(function(){
var obj = {
drop:function(e,ui){
var handle = ui.helper,
_left = handle.offset().left,
_top = handle.offset().top,
cleft = $(this).offset().left,
ctop = $(this).offset().top;
handle.appendTo($(this)).css({
left:_left-cleft,
top:_top-ctop
});
}
};
$("#addBox").click(function(){
var $box = $('<div class = "box">box</div>');
$box.appendTo($("#EZ_SITE_PAGE")).draggable().droppable(obj);
})
$("#dragMe,#box").draggable({
containment:"#EZ_SITE"
});
$(".ez_page_content,#box").droppable(obj);
})
</script>
</head>
<body>
<div id="EZ_SITE" class="EZ_SITE">
<div id="EZ_SITE_HEADER" class="EZ_SITE_HEADER">
<div class="ez_site_border">
<div class="ez_site_background"></div>
</div>
<div class="ez_page_content">
<div style="position: absolute; top:20px; left:30px;"> This is 1 Site Titles </div>
<div style="position: absolute; top:20px; left:300px;" class="mk-element-navigation">
<a href="javascript:;" id="index"> homepage </a>
<a href="javascript:;" id="product"> product </a>
</div>
</div>
</div>
<div id="EZ_SITE_PAGE" class="EZ_SITE_PAGE">
<input type = "button" value = " Add Container " id = "addBox"/>
<div class="ez_site_border" style="height:500px;">
<div class="ez_site_background"></div>
</div>
<div id="index" class="ez_page_content" style="opacity: 1;" current="true">
<div style="position: absolute; top:20px; left:30px; font-weight: bold;"> This is 1 Home page </div>
<div id = "dragMe">dragMe</div>
</div>
</div>
<div id="EZ_SITE_FOOTER" class="EZ_SITE_FOOTER">
<div class="ez_site_border">
<div class="ez_site_background"></div>
</div>
<div class="ez_page_content">
<div style="position: absolute; top:20px; left:30px;"> Here is the footer </div>
</div>
</div>
</div>
</body>
</html>
More readers interested in jQuery-related content can view this site's topics: jQuery Drag-and-Drop Special Effects and Skills Summary, jQuery Table (table) Operation Skills Summary, jQuery Common Plug-ins and Usages Summary, Ajax Usage Summary in jquery, jQuery Extension Skills Summary, jQuery Common Classic Special Effects Summary,jQuery Animation and Utility Summary and jquery Selector Usage Summary
I hope that the description in this paper will be helpful to everyone's jQuery program design.