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使用unlock.js插件实现滑动解锁
Apr 04 jQuery
jQuery Validate 无法验证 chosen-select元素的解决方法
May 17 jQuery
jquery+css实现侧边导航栏效果
Jun 12 jQuery
jQuery封装placeholder效果实现方法,让低版本浏览器支持该效果
Jul 08 jQuery
jquery实现点击a链接,跳转之后,该a链接处显示背景色的方法
Jan 18 jQuery
jQuery NProgress.js加载进度插件的简单使用方法
Jan 31 jQuery
深入浅析angular和vue还有jquery的区别
Aug 13 jQuery
Vue CLI3.0中使用jQuery和Bootstrap的方法
Feb 28 jQuery
简单易扩展可控性强的Jquery转盘抽奖程序
Mar 16 jQuery
jQuery动态生成的元素绑定事件操作实例分析
May 04 jQuery
jquery3和layui冲突导致使用layui.layer.full弹出全屏iframe窗口时高度152px问题
May 12 jQuery
JQuery通过键盘控制键盘按下与松开触发事件
Aug 07 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 中文乱码解决办法总结分析
2009/07/30 PHP
apache和php之间协同工作的配置经验分享
2013/04/08 PHP
PHP判断IP并转跳到相应城市分站的方法
2015/03/25 PHP
PHP封装的XML简单操作类完整实例
2017/11/13 PHP
PHP Pipeline 实现中间件的示例代码
2020/04/26 PHP
原生javascript实现DIV拖拽并计算重复面积
2015/01/02 Javascript
JS中Location使用详解
2015/05/12 Javascript
VUE利用vuex模拟实现新闻点赞功能实例
2017/06/28 Javascript
Bootstrap Table快速完美搭建后台管理系统
2017/09/20 Javascript
纯html+css+javascript实现楼层跳跃式的页面布局(实例代码)
2017/10/25 Javascript
vue-devtools的安装步骤
2018/04/23 Javascript
js中Object.defineProperty()方法的不详解
2018/07/09 Javascript
Vue中的异步组件函数实现代码
2018/07/20 Javascript
详解在vue-cli中使用graphql即vue-apollo的用法
2018/09/08 Javascript
vue路由跳转传参数的方法
2019/05/06 Javascript
vue监听用户输入和点击功能
2019/09/27 Javascript
微信小程序之高德地图多点路线规划过程示例详解
2021/01/18 Javascript
Python编程中的for循环语句学习教程
2015/10/14 Python
Python开发如何在ubuntu 15.10 上配置vim
2016/01/25 Python
python中zip()方法应用实例分析
2016/04/16 Python
如何优雅地处理Django中的favicon.ico图标详解
2018/07/05 Python
Python统计纯文本文件中英文单词出现个数的方法总结【测试可用】
2018/07/25 Python
Django中日期处理注意事项与自定义时间格式转换详解
2018/08/06 Python
Python 类方法和实例方法(@classmethod),静态方法(@staticmethod)原理与用法分析
2019/09/20 Python
使用K.function()调试keras操作
2020/06/17 Python
举例详解CSS3中的Transition
2015/07/15 HTML / CSS
css3 media 响应式布局的简单实例
2016/08/03 HTML / CSS
通过一张图教会你CSS3倒影的实现
2017/09/26 HTML / CSS
美国羽绒床上用品第一品牌:Pacific Coast
2018/08/25 全球购物
迪奥官网:Dior.com
2018/12/04 全球购物
巴西手表购物网站:eclock
2019/03/19 全球购物
Skyscanner香港:机票比价, 平机票和廉价航空机票预订
2020/02/07 全球购物
军校大学生个人的自我评价
2014/02/17 职场文书
元宵节主持词
2014/03/25 职场文书
电工技术比武方案
2014/05/11 职场文书
电台广播稿范文
2015/08/19 职场文书