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实现文字打印动态效果
Apr 21 jQuery
jQuery自定义元素右键点击事件(实现案例)
Apr 28 jQuery
详解jquery选择器的原理
Aug 01 jQuery
jQuery选取所有复选框被选中的值并用Ajax异步提交数据的实例
Aug 04 jQuery
jQuery Validate插件ajax方式验证输入值的实例
Dec 21 jQuery
jQuery+CSS实现的table表格行列转置功能示例
Jan 08 jQuery
jQuery实现动态添加和删除input框实例代码
Mar 26 jQuery
JQuery发送ajax请求时中文乱码问题解决
Nov 14 jQuery
Jquery让form表单异步提交代码实现
Nov 14 jQuery
jquery实现图片无缝滚动 蒙版遮蔽效果
Jan 11 jQuery
jQuery实现倒计时功能完整示例
Jun 01 jQuery
jQuery使用jsonp实现百度搜索的示例代码
Jul 08 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
Windows下安装PHP单元测试环境PHPUnit图文教程
2014/10/24 PHP
php实现表单多按钮提交action的处理方法
2015/10/24 PHP
php简单随机字符串生成方法示例
2017/04/19 PHP
PHP操作redis实现的分页列表,新增,删除功能封装类与用法示例
2018/08/04 PHP
javascript之函数直接量(function(){})()
2007/06/29 Javascript
JS延迟加载加快页面打开速度示例代码
2013/12/30 Javascript
apply和call方法定义及apply和call方法的区别
2015/11/15 Javascript
引用jquery框架后出错的解决方法
2016/08/09 Javascript
JavaScript切换搜索引擎的导航网页搜索框实例代码
2017/06/11 Javascript
js合并两个数组生成合并后的key:value数组
2018/05/09 Javascript
vux uploader 图片上传组件的安装使用方法
2018/05/15 Javascript
Vue 组件传值几种常用方法【总结】
2018/05/28 Javascript
layui前端框架之table表数据的刷新方法
2018/08/17 Javascript
vue中路由跳转不计入history的操作
2020/09/21 Javascript
解决vue watch数据的方法被调用了两次的问题
2020/11/07 Javascript
python算法学习之基数排序实例
2013/12/18 Python
python 函数内部修改外部变量的方法
2018/12/18 Python
解决Pycharm界面的子窗口不见了的问题
2019/01/17 Python
python实现视频分帧效果
2019/05/31 Python
python框架django项目部署相关知识详解
2019/11/04 Python
Python list运算操作代码实例解析
2020/01/20 Python
python GUI库图形界面开发之PyQt5信号与槽基础使用方法与实例
2020/03/06 Python
pycharm Tab键设置成4个空格的操作
2021/02/26 Python
canvas像素画板的实现代码
2018/11/21 HTML / CSS
墨西哥皇宫度假村预订:Palace Resorts
2018/06/16 全球购物
西班牙自行车和跑步商店:Alltricks
2018/07/07 全球购物
清洁工岗位职责
2014/01/29 职场文书
入股协议书范本
2014/04/14 职场文书
交警正风肃纪剖析材料
2014/10/29 职场文书
给领导的感谢信范文
2015/01/23 职场文书
大学军训通讯稿(2016最新版)
2015/12/21 职场文书
世界文化遗产导游词
2019/08/07 职场文书
详解MySQL连接挂死的原因
2021/05/18 MySQL
Redis 彻底禁用RDB持久化操作
2021/07/09 Redis
python游戏开发Pygame框架
2022/04/22 Python
Nginx HTTP跳转至HTTPS
2022/05/15 Servers