jQuery实现的简单对话框拖动功能示例


Posted in jQuery onJune 05, 2018

本文实例讲述了jQuery实现的简单对话框拖动功能。分享给大家供大家参考,具体如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>3water.com jquery 拖动</title>
<meta name="description" content="">
<meta name="keywords" content="">
<link href="" rel=" rel="external nofollow" stylesheet">
<style>
  *{margin: 0;padding: 0;box-sizing: border-box;-moz-user-select:none;}
  body {font: 12px/16px bold 'microsoft yahei,微软雅黑';}
  .dragContainer {
    width: 382px;
    height: 395px;
     position: absolute;
    top: 50%;
    left: 50%;
    border: 1px solid red;
    margin-left: -191px;
    margin-top: -197.5px;
  }
  .dragContainer .dragtitle {
   width: 100%;
   height: 35px;
   border-bottom: 1px solid red;
   text-align: center;
   line-height: 35px;
  }
  .dragContainer .dragtitle:hover {
    cursor: move;
  }
  .dragContainer .content {
    width: 100%;
    height: 360px;
  }
  p.buttonGroup {
     width: 100%;
    text-align: center;
     position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 5px;
    border-top: 1px solid red;
  }
  p.buttonGroup input {
    padding: 5px 10px;
    color: white;
  }
  p.buttonGroup input:hover {
    cursor: pointer;
    cursor: hand;
  }
  p.buttonGroup input:first-child {
    margin-left: 25px;
    background: blue;
  }
  p.buttonGroup input.btn2 {
    margin-left: 15px;
    background: red;
  }
  </style>
</head>
<body>
 <div class="dragContainer" id="drag" style="'position:absolute;" >
   <p class="dragtitle">标题栏</p>
   <div class="content"></div>
   <p class="buttonGroup"><input type="button" value="确定"><input type="button" value="取消" class="btn2"></p>
 </div>
  <script src="http://cdn.bootcss.com/jquery/2.1.0/jquery.js"></script>
  <script type="text/javascript">
  var mydrag={
    mousePoint: {x:0,y:0}, //初始化坐标
    drag: function(){
      var that=this; //保存当前对象即(mydrag),如果不保存,在mousedown()里访问不了mydrag这个对象
      var targetid=$(".dragtitle");
      targetid.mousedown(function(event){
        var e=event;
        var offsetLeft=targetid.offset().left; //当前div的左偏移距离
        var offsetTop=targetid.offset().top;  //当前div的顶部偏移距离
          that.mousePoint.x=e.clientX-offsetLeft;//计算鼠标点击时离它自己div的横向距离
        that.mousePoint.y=e.clientY-offsetTop;  //计算鼠标点击时离它自己div的纵向距离
        $(document).bind('mousemove',move);
        e.stopPropagation();
      });
      function move(event){
          var e =event;
          var Left=e.clientX-that.mousePoint.x; //移动后,重新计算左偏移和顶部偏移距离
          var Top=e.clientY-that.mousePoint.y;
          $("#drag").css({'top':Top,'left':Left,'margin':0});
          $(document).bind('mouseup',end);
          e.stopPropagation();
        };
        function end(event){
          var e = event;
             $(document).unbind('mousemove', move);
                $(document).unbind('mouseup',end);
          e.stopPropagation();
        };
    }
  }
  mydrag.drag();
  </script>
</body>
</html>

使用在线HTML/CSS/JavaScript代码运行工具 http://tools.3water.com/code/HtmlJsRun测试,运行效果如下:

jQuery实现的简单对话框拖动功能示例

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

jQuery 相关文章推荐
jQuery插件HighCharts绘制2D饼图效果示例【附demo源码下载】
Mar 21 jQuery
jQuery实现百度登录框的动态切换效果
Apr 21 jQuery
jQuery实现鼠标滑过预览图片大图效果的方法
Apr 26 jQuery
jQuery选择器之属性筛选选择器用法详解
Sep 19 jQuery
基于jquery.page.js实现分页效果
Jan 01 jQuery
jQuery封装animate.css的实例
Jan 04 jQuery
jQuery NProgress.js加载进度插件的简单使用方法
Jan 31 jQuery
jQuery实现百度图片移入移出内容提示框上下左右移动的效果
Jun 05 jQuery
Jquery如何使用animation动画效果改变背景色的代码
Jul 20 jQuery
JQuery+drag.js上传图片并且实现图片拖曳
Nov 18 jQuery
基于jQuery拖拽事件的封装
Nov 29 jQuery
使用jquery实现轮播图效果
Jan 02 jQuery
jQuery实现的滑块滑动导航效果示例
Jun 04 #jQuery
jQuery实现常见的隐藏与展示列表效果示例
Jun 04 #jQuery
jQuery实现的简单获取索引功能示例
Jun 04 #jQuery
JS与jQuery实现ListBox上移,下移,左移,右移操作功能示例
May 31 #jQuery
jQuery基于Ajax实现读取XML数据功能示例
May 31 #jQuery
jQuery实现动态加载select下拉列表项功能示例
May 31 #jQuery
webpack里使用jquery.mCustomScrollbar插件的方法
May 30 #jQuery
You might like
利用PHP实现智能文件类型检测的实现代码
2011/08/02 PHP
20个2014年最优秀的PHP框架回顾
2014/10/22 PHP
php多重接口的实现方法
2015/06/20 PHP
thinkphp自带验证码全面解析
2016/09/18 PHP
PHP开发之归档格式phar文件概念与用法详解【创建,使用,解包还原提取】
2017/11/17 PHP
qTip 基于JQuery的Tooltip插件[兼容性好]
2010/09/01 Javascript
扩展javascript的Date方法实现代码(prototype)
2010/11/20 Javascript
jquery中通过过滤器获取表单元素的实现代码
2011/07/05 Javascript
通过Javascript创建一个选择文件的对话框代码
2012/06/16 Javascript
js获取php变量的实现代码
2013/08/10 Javascript
javascript 回到顶部效果的实现代码
2014/02/17 Javascript
js控制浏览器全屏示例代码
2014/02/20 Javascript
JavaScript及jquey实现多个数组的合并操作
2014/09/06 Javascript
JavaScript通过setTimeout实时显示当前时间的方法
2015/04/16 Javascript
js cookie实现记住密码功能
2017/01/17 Javascript
纯html+css+javascript实现楼层跳跃式的页面布局(实例代码)
2017/10/25 Javascript
vue+iview+less+echarts实战项目总结
2018/02/22 Javascript
Angular resolve基础用法详解
2018/10/03 Javascript
深入理解nodejs搭建静态服务器(实现命令行)
2019/02/05 NodeJs
jQuery实现消息弹出框效果
2019/12/10 jQuery
Vant picker 多级联动操作
2020/11/02 Javascript
[46:28]EG vs Liquid 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.23
2019/09/05 DOTA
Python中的二叉树查找算法模块使用指南
2014/07/04 Python
python opencv实现任意角度的透视变换实例代码
2018/01/12 Python
Python3.6+selenium2.53.6自动化测试_读取excel文件的方法
2019/09/06 Python
使用OpenCV-python3实现滑动条更新图像的Canny边缘检测功能
2019/12/12 Python
python turtle 绘制太极图的实例
2019/12/18 Python
2021年值得向Python开发者推荐的VS Code扩展插件
2021/01/25 Python
美国波西米亚风格精品店:South Moon Under
2019/10/26 全球购物
自动化工程专业个人应聘自荐信
2013/09/26 职场文书
大学生专科学习生活的自我评价
2013/12/07 职场文书
考博专家推荐信
2014/05/10 职场文书
班子四风对照检查材料
2014/08/21 职场文书
物理课外活动总结
2014/08/27 职场文书
优秀少先队辅导员事迹材料
2014/12/24 职场文书
个人事迹材料范文
2014/12/29 职场文书