使用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 相关文章推荐
jQuery 页面载入进度条实现代码
Feb 08 Javascript
firefox下对ajax的onreadystatechange的支持情况分析
Dec 14 Javascript
js判断页面中是否有指定控件的简单实例
Mar 04 Javascript
js获取form的方法
May 06 Javascript
js如何判断访问是来自搜索引擎(蜘蛛人)还是直接访问
Sep 14 Javascript
javascript类型系统 Window对象学习笔记
Jan 07 Javascript
JavaScript新增样式规则(推荐)
Jul 19 Javascript
使用微信小程序开发前端【快速入门】
Dec 05 Javascript
Move.js入门
Feb 08 Javascript
利用Node.js检测端口是否被占用的方法
Dec 07 Javascript
vue.js+element-ui动态配置菜单的实例
Sep 07 Javascript
Angular请求防抖处理第一次请求失效问题
May 17 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
PHP使用CURL获取302跳转后的地址实例
2014/05/04 PHP
ThinkPHP模板Volist标签嵌套循环输出多维数组的方法
2016/03/23 PHP
PHP无限极分类函数的实现方法详解
2017/04/15 PHP
jQuery scroll事件实现监控滚动条分页示例
2014/04/04 Javascript
Javascript连接Access数据库完整实例
2015/08/03 Javascript
详解JavaScript中的属性和特性
2016/12/08 Javascript
微信小程序实现倒计时60s获取验证码
2020/04/17 Javascript
vue首次赋值不触发watch的解决方法
2018/09/11 Javascript
javascript中如何判断类型汇总
2019/05/14 Javascript
使用 node.js 模仿 Apache 小部分功能
2019/07/07 Javascript
Vue如何基于vue-i18n实现多国语言兼容
2020/07/17 Javascript
go语言计算两个时间的时间差方法
2015/03/13 Python
简单介绍Python中的floor()方法
2015/05/15 Python
Python中的with语句与上下文管理器学习总结
2016/06/28 Python
Pandas过滤dataframe中包含特定字符串的数据方法
2018/11/07 Python
Python3 pip3 list 出现 DEPRECATION 警告的解决方法
2019/02/16 Python
python中while和for的区别总结
2019/06/28 Python
在python中用url_for构造URL的方法
2019/07/25 Python
基于Python检测动态物体颜色过程解析
2019/12/04 Python
Python3开发实例之非关系型图数据库Neo4j安装方法及Python3连接操作Neo4j方法实例
2020/03/18 Python
matplotlib jupyter notebook 图像可视化 plt show操作
2020/04/24 Python
python Django 反向访问器的外键冲突解决
2020/05/20 Python
基于Python第三方插件实现西游记章节标注汉语拼音的方法
2020/05/22 Python
Python如何输出百分比
2020/07/31 Python
安装不同版本的tensorflow与models方法实现
2021/02/20 Python
整理HTML5的一些新特性与Canvas的常用属性
2016/01/29 HTML / CSS
Shopee越南:东南亚与台湾电商平台
2019/02/03 全球购物
MIXIT官网:俄罗斯最大的化妆品公司之一
2020/01/25 全球购物
传统软件工程与面向对象的软件工程有什么区别
2012/05/31 面试题
历史专业毕业生的自我鉴定
2013/11/15 职场文书
岗位工作说明书
2014/07/29 职场文书
优秀共产党员事迹材料
2014/12/18 职场文书
毕业生班级鉴定评语
2015/01/04 职场文书
物业保洁员管理制度
2015/08/05 职场文书
导游词之西安骊山
2019/12/20 职场文书
SpringCloud Alibaba项目实战之nacos-server服务搭建过程
2021/06/21 Java/Android