使用angular帮你实现拖拽的示例


Posted in Javascript onJuly 05, 2017

拖拽有多种写法,在这里就看一看angular版的拖拽。

<!DOCTYPE html>
<html ng-app="myApp">
  <head>
    <meta charset="UTF-8">
    <title></title>
    <style type="text/css">
      #box{
        width: 100px;
        height: 100px;
        background: black;
        /*一定要给当前元素设置绝对定位*/
        position: absolute;
        left: 0;
        top: 0;
      }
    </style>
  </head>
  <body>
    <div id="box" my-drag></div>
  </body>
    <script src="jquery-3.1.1.min.js" type="text/javascript" charset="utf-8"></script>
    <script src="../js/angular.min.js" type="text/javascript" charset="utf-8"></script>
    <script type="text/javascript">
//     自定义一个模块
      var app = angular.module("myApp",[]);
//     自定义指令 自定义指令时一定要使用驼峰命名法
      app.directive('myDrag',function(){
//       返回一个函数
        return{
          link : function(scope,element,attr){
//           scope可以接收到的数据
//           element 当前的元素
//           attr属性
 
//           拖拽的三大事件mousedown,mousemove,mouseup.使用jq绑定事件的方法进行绑定
            element.on('mousedown',function(ev){
//             通过event获取到当前对象
              var This = $(this);
//             获取到鼠标离当前元素上边框的距离
              var disX = ev.clientX - $(this).offset().left;
//             获取到元素距离左边框的距离 
//             因为在拖拽的过程中不变的是鼠标距离元素边框的距离 通过不变和已知求变量
              var disY = ev.clientY - $(this).offset().top;
              $(document).on('mousemove',function(ev){
//               将所改变的值通过样式设置给当前元素
                This.css({
                  left:ev.clientX - disX,
                  top:ev.clientY - disY,
                });
              });
              $(document).on('mouseup',function(){
//               鼠标松开时关闭所有事件
                $(document).off();
              })
            })
          },
          restrict:'A', //ECMA    E元素 C类名 M注释 A属性
        };
      });
    </script>
</html>

以上这篇使用angular帮你实现拖拽的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript去除空格的三种方法(正则/传参函数/trim)
Feb 06 Javascript
Javascript核心读书有感之表达式和运算符
Feb 11 Javascript
动态加载jQuery的两种方法实例分析
Jul 17 Javascript
详解JavaScript中数组的相关知识
Jul 29 Javascript
理解js回收机制通俗易懂版
Feb 29 Javascript
JS组件Bootstrap实现弹出框效果代码
Apr 26 Javascript
jQuery.cookie.js实现记录最近浏览过的商品功能示例
Jan 23 Javascript
使用JavaScript开发跨平台的桌面应用详解
Jul 27 Javascript
Windows下Node.js安装及环境配置方法
Sep 18 Javascript
prototype.js简单实现ajax功能示例
Oct 18 Javascript
在Vue项目中使用snapshot测试的具体使用
Apr 16 Javascript
浅谈vue-props的default写不写有什么区别
Aug 09 Javascript
使用JavaScript根据图片获取条形码的方法
Jul 04 #Javascript
jquery拖动改变div大小
Jul 04 #jQuery
JavaScript无操作后屏保功能的实现方法
Jul 04 #Javascript
JS中type=&quot;button&quot;和type=&quot;submit&quot;的区别
Jul 04 #Javascript
5分钟打造简易高效的webpack常用配置
Jul 04 #Javascript
AngularJS实现表格的增删改查(仅限前端)
Jul 04 #Javascript
js CSS3实现卡牌旋转切换效果
Jul 04 #Javascript
You might like
Laravel5框架自定义错误页面配置操作示例
2019/04/17 PHP
Mootools 1.2教程 同时进行多个形变动画
2009/09/15 Javascript
window.onbeforeunload方法在IE下无法正常工作的解决办法
2010/01/23 Javascript
分享精心挑选的12款优秀jQuery Ajax分页插件和教程
2012/08/09 Javascript
表头固定(利用jquery实现原理介绍)
2012/11/08 Javascript
jquery实现点击文字可编辑并修改保存至数据库
2014/04/15 Javascript
js与jquery回车提交的方法
2015/02/03 Javascript
javascript图片预加载完整实例
2015/12/10 Javascript
使用jQuery判断Div是否在可视区域的方法 判断div是否可见
2016/02/17 Javascript
一个简单不报错的summernote 图片上传案例
2016/07/11 Javascript
JavaScript编码风格指南(中文版)
2016/08/26 Javascript
js数组操作方法总结(必看篇)
2016/11/22 Javascript
微信小程序获取用户openId的实现方法
2017/05/23 Javascript
js实现京东轮播图效果
2017/06/30 Javascript
BootStrap Table复选框默认选中功能的实现代码(从数据库获取到对应的状态进行判断是否为选中状态)
2017/07/11 Javascript
小程序实现带年月选取效果的日历
2018/06/27 Javascript
Vue实现页面添加水印功能
2019/11/09 Javascript
js滚轮事件 js自定义滚动条的实现
2020/01/18 Javascript
vue 实现动态路由的方法
2020/07/06 Javascript
JavaScript位置参数实现原理及过程解析
2020/09/14 Javascript
使用JavaScript实现贪吃蛇游戏
2020/09/29 Javascript
Python的Bottle框架中返回静态文件和JSON对象的方法
2015/04/30 Python
浅谈python内置变量-reversed(seq)
2017/06/21 Python
EM算法的python实现的方法步骤
2018/01/02 Python
python画柱状图--不同颜色并显示数值的方法
2018/12/13 Python
Python3+OpenCV2实现图像的几何变换(平移、镜像、缩放、旋转、仿射)
2019/05/13 Python
使用python制作一个解压缩软件
2019/11/13 Python
解决python3插入mysql时内容带有引号的问题
2020/03/02 Python
HTML5仿手机微信聊天界面
2016/03/18 HTML / CSS
JSP和EJB可以共享HttpSession么?EJB里面可以改变session里面的内容
2013/06/05 面试题
函授药学自我鉴定
2014/02/07 职场文书
反腐倡廉演讲稿
2014/05/22 职场文书
小学见习报告
2015/06/23 职场文书
幼儿园六一主持词
2015/06/30 职场文书
基层医务人员三严三实心得体会
2016/01/05 职场文书
html5调用摄像头截图功能
2022/01/18 Javascript