jQuery实现简单的DIV拖动效果


Posted in Javascript onFebruary 19, 2016

本文实例讲述了jQuery实现简单的DIV拖动效果。分享给大家供大家参考,具体如下:

创建一个HTML文件,复制以下代码进去,修改jquery文件(没有的到网上去下一个,我使用的是jquery-1.8.2),即可以运行了

<!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=gb2312" />
<title>Jquery:鼠标拖动DIV</title>
<style type="text/css">
  div#computerMove{
    position:absolute;
    top:50px;
    left:50px;
    width:200px;
    height:30px;
    line-height:30px;
    background-color:#00CCCC;
    text-align:center;
    color:#FFFFFF;
    cursor:default;
  }
</style>
</head>
<body>
  <div id="computerMove">点击我拖动</div>
  <script src="jquery-1.8.2.js" type="text/javascript"></script>
  <script type="text/javascript">
    $(document).ready(function(){
      var $div = $("div#computerMove");
      /* 绑定鼠标左键按住事件 */
      $div.bind("mousedown",function(event){
        /* 获取需要拖动节点的坐标 */
        var offset_x = $(this)[0].offsetLeft;//x坐标
        var offset_y = $(this)[0].offsetTop;//y坐标
        /* 获取当前鼠标的坐标 */
        var mouse_x = event.pageX;
        var mouse_y = event.pageY;
        /* 绑定拖动事件 */
        /* 由于拖动时,可能鼠标会移出元素,所以应该使用全局(document)元素 */
        $(document).bind("mousemove",function(ev){
          /* 计算鼠标移动了的位置 */
          var _x = ev.pageX - mouse_x;
          var _y = ev.pageY - mouse_y;
          /* 设置移动后的元素坐标 */
          var now_x = (offset_x + _x ) + "px";
          var now_y = (offset_y + _y ) + "px";
          /* 改变目标元素的位置 */
          $div.css({
            top:now_y,
            left:now_x
          });
        });
      });
      /* 当鼠标左键松开,接触事件绑定 */
      $(document).bind("mouseup",function(){
        $(this).unbind("mousemove");
      });
    })
  </script>
</body>
</html>

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

Javascript 相关文章推荐
十个优秀的Ajax/Javascript实例网站收集
Mar 31 Javascript
javascript常见用法总结
May 22 Javascript
JavaScript必知必会(六) delete in instanceof
Jun 08 Javascript
js利用正则表达式检验输入内容是否为网址
Jul 05 Javascript
vue.js中$watch的用法示例
Oct 04 Javascript
完美解决jQuery 鼠标快速滑过后,会执行多次滑出的问题
Dec 08 Javascript
react.js 获取真实的DOM节点实例(必看)
Apr 17 Javascript
详解vue+vuex+koa2开发环境搭建及示例开发
Jan 22 Javascript
js全屏事件fullscreenchange 实现全屏、退出全屏操作
Sep 17 Javascript
Vuex,iView UI面包屑导航使用扩展详解
Nov 04 Javascript
vue 动态组件用法示例小结
Mar 06 Javascript
js瀑布流布局的实现
Jun 28 Javascript
JavaScript深度复制(deep clone)的实现方法
Feb 19 #Javascript
百度坐标(BD09)、国测局坐标(火星坐标,GCJ02)、和WGS84坐标系之间的转换
Feb 19 #Javascript
基于JavaScript实现弹出框效果
Feb 19 #Javascript
jQuery on()绑定动态元素出现的问题小结
Feb 19 #Javascript
学习javascript文件加载优化
Feb 19 #Javascript
初识angular框架后的所思所想
Feb 19 #Javascript
复杂的javascript窗口分帧解析
Feb 19 #Javascript
You might like
php面向对象全攻略 (十四) php5接口技术
2009/09/30 PHP
Look And Say 序列php实现代码
2011/05/22 PHP
PHP中date()日期函数有关参数整理
2011/07/19 PHP
php抽象类用法实例分析
2015/07/07 PHP
CI配置多数据库访问的方法
2016/03/28 PHP
javascript parseInt 大改造
2009/09/27 Javascript
javascript中的float运算精度实例分析
2010/08/21 Javascript
IE6 fixed的完美解决方案
2011/03/31 Javascript
js创建子窗口并且回传值示例代码
2013/07/02 Javascript
js之事件冒泡和事件捕获详细介绍
2013/10/28 Javascript
JS递归遍历对象获得Value值方法技巧
2016/06/14 Javascript
Vue.js教程之计算属性
2016/11/11 Javascript
使用JS批量选中功能实现更改数据库中的status状态值(批量展示)
2016/11/22 Javascript
基于jQuery实现文字打印动态效果
2017/04/21 jQuery
JS库之Particles.js中文开发手册及参数详解
2017/09/13 Javascript
详解如何快速配置webpack多入口脚手架
2018/12/28 Javascript
详解单页面路由工程使用微信分享及二次分享解决方案
2019/02/22 Javascript
Node使用Selenium进行前端自动化操作的代码实现
2019/10/10 Javascript
js+canvas实现纸牌游戏
2020/03/16 Javascript
JavaScript实现原型封装轮播图
2020/12/27 Javascript
python类继承与子类实例初始化用法分析
2015/04/17 Python
浅谈python字符串方法的简单使用
2016/07/18 Python
python读文件保存到字典,修改字典并写入新文件的实例
2018/04/23 Python
Django REST Framework序列化外键获取外键的值方法
2019/07/26 Python
Numpy 中的矩阵求逆实例
2019/08/26 Python
Python实现语音识别和语音合成功能
2019/09/20 Python
Python中url标签使用知识点总结
2020/01/16 Python
PHP基于phpqrcode类库生成二维码过程解析
2020/05/28 Python
浅析Python 抽象工厂模式的优缺点
2020/07/13 Python
俄罗斯旅游网站:Tripadvisor俄罗斯
2017/03/21 全球购物
Visual-Click葡萄牙:欧洲领先的在线眼镜商
2020/02/17 全球购物
4s客服专员岗位职责
2013/12/01 职场文书
文明宿舍获奖感言
2014/02/07 职场文书
2014年学生工作总结
2014/11/20 职场文书
家长意见书
2015/06/04 职场文书
详解MySQL的半同步
2021/04/22 MySQL