使用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多种数据类型表格排序代码分析
Sep 11 Javascript
jquery struts 验证唯一标识(公用方法)
Mar 27 Javascript
点击按钮或链接不跳转只刷新页面的脚本整理
Oct 22 Javascript
AngularJS入门教程(二):AngularJS模板
Dec 06 Javascript
JavaScript合并两个数组并去除重复项的方法
Jun 13 Javascript
jQuery实现指定内容滚动同时左侧或其它地方不滚动的方法
Aug 08 Javascript
基于jquery实现ajax无刷新评论
Aug 19 Javascript
jQuery实现打开页面渐现效果示例
Jul 27 Javascript
Query常用DIV操作获取和设置长度宽度的实现方法
Sep 19 Javascript
JavaScript“尽快失败”的原则实例详解
Oct 08 Javascript
js实现产品缩略图效果
Mar 10 Javascript
Vue实现多标签选择器
Nov 28 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单态模式简单用法示例
2016/11/16 PHP
php文件上传 你真的掌握了吗
2016/11/28 PHP
php实现生成code128条形码的方法详解
2017/07/19 PHP
javascript利用apply和arguments复用方法
2013/11/25 Javascript
基于javascript实现漂亮的页面过渡动画效果附源码下载
2015/10/26 Javascript
jQuery-1.9.1源码分析系列(十)事件系统之事件体系结构
2015/11/19 Javascript
bootstrap-treeview自定义双击事件实现方法
2016/01/09 Javascript
React.js入门学习第一篇
2016/03/30 Javascript
JavaScript中的splice方法用法详解
2016/07/20 Javascript
3种不同的ContextMenu右键菜单实现代码
2016/11/03 Javascript
vue中的$emit 与$on父子组件与兄弟组件的之间通信方式
2018/05/13 Javascript
Vue表单demo v-model双向绑定问题
2018/06/29 Javascript
vue 界面刷新数据被清除 localStorage的使用详解
2018/09/16 Javascript
IE8中jQuery.load()加载页面不显示的原因
2018/11/15 jQuery
element ui table(表格)实现点击一行展开功能
2018/12/04 Javascript
js中的数组对象排序分析
2018/12/11 Javascript
Javascript组合继承方法代码实例解析
2020/04/02 Javascript
JS中的继承操作实例总结
2020/06/06 Javascript
python中使用urllib2获取http请求状态码的代码例子
2014/07/07 Python
Python 正则表达式入门(初级篇)
2016/12/07 Python
解决Mac下首次安装pycharm无project interpreter的问题
2018/10/29 Python
Python操作MySQL数据库的两种方式实例分析【pymysql和pandas】
2019/03/18 Python
python自动化测试之如何解析excel文件
2019/06/27 Python
jupyter notebook 添加kernel permission denied的操作
2020/04/21 Python
基于CSS3的CSS 多栏(Multi-column)实现瀑布流源码分享
2014/06/11 HTML / CSS
详解如何获取localStorage最大存储大小的方法
2020/05/21 HTML / CSS
微软澳洲官方网站:Microsoft Australia
2017/01/10 全球购物
大学生四个方面的自我评价
2013/09/19 职场文书
年终晚会主持词
2014/03/25 职场文书
模具专业求职信
2014/06/26 职场文书
2014村党支部书记党建工作汇报材料
2014/11/02 职场文书
委托公证书样本
2015/01/23 职场文书
2015年世界粮食日演讲稿
2015/03/20 职场文书
关于远足的感想
2015/08/10 职场文书
小学远程教育工作总结
2015/08/13 职场文书
2016新教师培训心得体会范文
2016/01/08 职场文书