使用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 相关文章推荐
extJs 文本框后面加上说明文字+下拉列表选中值后触发事件
Nov 27 Javascript
contains和compareDocumentPosition 方法来确定是否HTML节点间的关系
Sep 13 Javascript
JsRender for index循环索引用法详解
Oct 31 Javascript
js插件YprogressBar实现漂亮的进度条效果
Apr 20 Javascript
js+html5通过canvas指定开始和结束点绘制线条的方法
Jun 05 Javascript
jQuery  ready方法实现原理详解
Oct 19 Javascript
利用JS实现点击按钮后图片自动切换的简单方法
Oct 24 Javascript
浅谈JavaScript中的apply/call/bind和this的使用
Feb 26 Javascript
Angular.Js中ng-include指令的使用与实现
May 07 Javascript
JS和Canvas实现图片的预览压缩和上传功能
Mar 30 Javascript
使用JQuery自动完成插件Auto Complete详解
Jun 18 jQuery
JavaScript实现多层颜色选项卡嵌套
Sep 21 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中对数据库操作的封装
2006/10/09 PHP
php导出CSV抽象类实例
2014/09/24 PHP
php抽象类使用要点与注意事项分析
2015/02/09 PHP
PHP convert_uudecode()函数讲解
2019/02/14 PHP
jquery在Chrome下获取图片的长宽问题解决
2013/03/20 Javascript
你必须知道的Javascript知识点之&quot;this指针&quot;的应用
2013/04/23 Javascript
Extjs407 getValue()和getRawValue()区别介绍
2013/05/21 Javascript
引入JS文件IE6报语法错误或缺少对象问题的解决方法
2014/01/09 Javascript
详解jQuery中基本的动画方法
2016/12/14 Javascript
Angular.js 4.x中表单Template-Driven Forms详解
2017/04/25 Javascript
JS实现图片点击后出现模态框效果
2017/05/03 Javascript
vue页面使用阿里oss上传功能的实例(一)
2017/08/09 Javascript
jquery+ajaxform+springboot控件实现数据更新功能
2018/01/22 jQuery
如何以Angular的姿势打开Font-Awesome详解
2018/04/22 Javascript
10行代码实现微信小程序滑动tab切换
2018/12/28 Javascript
vue+导航锚点联动-滚动监听和点击平滑滚动跳转实例
2019/11/13 Javascript
JavaScript canvas仿代码流瀑布
2020/02/10 Javascript
[28:48]《真视界》- 2017年国际邀请赛
2017/09/27 DOTA
python数据结构之二叉树的统计与转换实例
2014/04/29 Python
在Apache服务器上同时运行多个Django程序的方法
2015/07/22 Python
实例讲解Python中函数的调用与定义
2016/03/14 Python
Python 基础之字符串string详解及实例
2017/04/01 Python
Python类的继承用法示例
2019/01/31 Python
python3.7简单的爬虫实例详解
2019/07/08 Python
基于python中__add__函数的用法
2019/11/25 Python
python深copy和浅copy区别对比解析
2019/12/26 Python
Python定时从Mysql提取数据存入Redis的实现
2020/05/03 Python
python如何删除文件、目录
2020/06/23 Python
BCBG官网:BCBGMAXAZRIA
2017/12/29 全球购物
意大利巧克力店:Chocolate Shop
2019/07/24 全球购物
音乐专业应届生教师求职信
2013/11/04 职场文书
工商企业管理实习自我鉴定
2013/12/04 职场文书
有关环保的标语
2014/06/13 职场文书
2014班子“三严三实”对照检查材料思想汇报
2014/09/18 职场文书
CSS实现章节添加自增序号的方法
2021/06/23 HTML / CSS
Pandas数据类型之category的用法
2021/06/28 Python