jQuery控制Div拖拽效果完整实例分析

 更新时间:2015年04月15日 09:55:07   作者:songguo  
这篇文章主要介绍了jQuery控制Div拖拽效果完整实例,对jQuery控制拖拽效果的方法以注释形式给予了较为详细的介绍,便于读者理解代码含义,需要的朋友可以参考下

本文实例讲述了jQuery控制Div拖拽效果的方法。分享给大家供大家参考。具体如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style>
#Drigging {
width:200px;
background:#CCC;
border:solid 1px #666;
height:80px;
line-height:80px;
text-align:center;
position:absolute;
}
</style>
<script src="jquery-1.8.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function(){ 
var bool=false; //标识是否移动元素
var offsetX=0; //声明DIV在当前窗口的Left值
var offsetY=0; //声明DIV在当前窗口的Top值
$("#Drigging").mouseover(function(){
$(this).css('cursor','move');
//当鼠标移动到拖拽的DIV上的时候,将鼠标的样式设置为移动(move)
})
$("#Drigging").mousedown(function(){ 
 bool=true;
 //当鼠标在移动元素按下的时候将bool设定为true
 offsetX = event.offsetX;
 //获取鼠标在当前窗口的相对偏移位置的Left值并赋值给offsetX
  offsetY = event.offsetY;
  //获取鼠在当前窗口的相对偏移位置的Top值并赋值给offsetY
 $(this).css('cursor','move');
 }).mouseup(function(){
bool=false;
//当鼠标在移动元素起来的时候将bool设定为false
})
$(document).mousemove(function(){
if(!bool)//如果bool为false则返回
return;
//当bool为true的时候执行下面的代码
var x = event.clientX-offsetX;
//event.clientX得到鼠标相对于客户端正文区域的偏移
//然后减去offsetX即得到当前推拽元素相对于当前窗口的X值
//(减去鼠标刚开始拖动的时候在当前窗口的偏移X)
var y = event.clientY-offsetY;
//event.clientY得到鼠标相对于客户端正文区域的偏移
//然后减去offsetX即得到当前推拽元素相对于当前窗口的Y值
//(减去鼠标刚开始拖动的时候在当前窗口的偏移Y)
$("#Drigging").css("left", x);
$("#Drigging").css("top", y);
$("#Drigging").css('cursor','move');
})
})
</script>
  </head>
  <body>
    <div id="Drigging" style="float:left">
      拖拽层
    </div>
  </body>
</html>

希望本文所述对大家的jQuery程序设计有所帮助。

相关文章

  • jQuery中将函数赋值给变量的调用方法

    jQuery中将函数赋值给变量的调用方法

    当函数作为其他函数的参数时和独立调用时,写法是有区别的,前者不用附加(),而后者必须加()
    2012-03-03
  • jQuery实现动态添加tr到table的方法

    jQuery实现动态添加tr到table的方法

    这篇文章主要介绍了jQuery实现动态添加tr到table的方法,涉及jQuery针对table表格元素的动态操作相关技巧,需要的朋友可以参考下
    2016-12-12
  • jQuery的deferred对象使用详解

    jQuery的deferred对象使用详解

    jQuery的开发速度很快,几乎每半年一个大版本,每两个月一个小版本。每个版本都会引入一些新功能。今天我想介绍的,就是从jQuery 1.5.0版本开始引入的一个新功能----deferred对象。
    2011-08-08
  • Jquery倒数计时按钮setTimeout的实例代码

    Jquery倒数计时按钮setTimeout的实例代码

    这篇文章介绍了Jquery倒数计时按钮setTimeout的实例,有需要的朋友可以参考一下
    2013-07-07
  • Jquery 获取对象的几种方式介绍

    Jquery 获取对象的几种方式介绍

    本文为大家介绍下Jquery如何获取对象有哪几种方式,感兴趣的朋友可以参考下
    2014-01-01
  • jQuery $命名冲突解决方案汇总

    jQuery $命名冲突解决方案汇总

    也许你在看此文章之前还不知道jquery有一个noConflict()东西了,它就是为了避免与其它js插件碰到相同变量的一个解决方法,利用noConflict()可以把变量存到其它指定的变量中去
    2014-11-11
  • jquery移动节点实例

    jquery移动节点实例

    这篇文章主要介绍了jquery移动节点的实现方法,主要涉及append()方法的使用技巧,需要的朋友可以参考下
    2015-01-01
  • 基于jQuery的Web上传插件Uploadify使用示例

    基于jQuery的Web上传插件Uploadify使用示例

    Uploadify是一款比较有人气的页面上传插件,Uploadify使用简单而且可定制性较高,接下来我们就一起来看下这款基于jQuery的Web上传插件Uploadify使用示例
    2016-05-05
  • jquery实现表格行的上下移动和置顶

    jquery实现表格行的上下移动和置顶

    这篇文章主要为大家详细介绍了jquery实现表格行的上下移动和置顶,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • jQuery中:enabled选择器用法实例

    jQuery中:enabled选择器用法实例

    这篇文章主要介绍了jQuery中:enabled选择器用法,实例分析了:enabled选择器的功能、定义及选取所有可用元素的使用技巧,需要的朋友可以参考下
    2015-01-01

最新评论