angularjs创建弹出框实现拖动效果


Posted in Javascript onAugust 25, 2020

本文实例介绍了angularjs创建弹出框实现拖动效果的相关代码,项目中需要将angular-ui-bootstrap中用到的弹出框,使之可拖动,分享给大家供大家参考,具体内容如下

运行效果图:

angularjs创建弹出框实现拖动效果

由于源文件中没有实现,需要自己实现指令,以下即为该指令,亲测可以实现。

.directive('draggable', ['$document', function($document) {
    return function(scope, element, attr) {
    var startX = 0, startY = 0, x = 0, y = 0;
    element= angular.element(document.getElementsByClassName("modal-dialog")); 
    element.css({
     position: 'relative',
     cursor: 'move'
    });

    element.on('mousedown', function(event) {
     // Prevent default dragging of selected content
     event.preventDefault();
     startX = event.pageX - x;
     startY = event.pageY - y;
     $document.on('mousemove', mousemove);
     $document.on('mouseup', mouseup);
    });

    function mousemove(event) {
     y = event.pageY - startY;
     x = event.pageX - startX;
     element.css({
     top: y + 'px',
     left: x + 'px'
     });
    }

    function mouseup() {
     $document.off('mousemove', mousemove);
     $document.off('mouseup', mouseup);
    }
    };
 }]);

以上就是本文的全部内容,希望对大家的学习有所帮助。

Javascript 相关文章推荐
javascript不同页面传值的改进版
Sep 30 Javascript
通过length属性判断jquery对象是否存在
Oct 18 Javascript
jquery easyui combobox模糊过滤(示例代码)
Nov 30 Javascript
js语法学习之判断一个对象是否为数组
May 13 Javascript
禁用Enter键表单自动提交实现代码
May 22 Javascript
html的DOM中document对象images集合用法实例
Jan 21 Javascript
React.js入门实例教程之创建hello world 的5种方式
May 11 Javascript
如何对react hooks进行单元测试的方法
Aug 14 Javascript
使用vscode快速建立vue模板过程详解
Oct 10 Javascript
浅谈vue 锚点指令v-anchor的使用
Nov 13 Javascript
vue使用map代替Aarry数组循环遍历的方法
Apr 30 Javascript
JavaScript实现网页动态生成表格
Nov 25 Javascript
JavaScript中定义类的方式详解
Jan 07 #Javascript
javascript类型系统 Window对象学习笔记
Jan 07 #Javascript
直接拿来用的页面跳转进度条JS实现
Jan 06 #Javascript
基于jQuery实现鼠标点击导航菜单水波动画效果附源码下载
Jan 06 #Javascript
JavaScript动态创建div等元素实例讲解
Jan 06 #Javascript
谈谈JavaScript类型系统之Math
Jan 06 #Javascript
莱鸟介绍javascript onclick事件
Jan 06 #Javascript
You might like
coreseek 搜索英文的问题详解
2013/06/08 PHP
php查找任何页面上的所有链接的方法
2013/12/03 PHP
thinkPHP3.x常量整理(预定义常量/路径常量/系统常量)
2016/05/20 PHP
jQuery中filter(),not(),split()使用方法
2010/07/06 Javascript
DWZ刷新dialog解决方法
2013/03/03 Javascript
Document:getElementsByName()使用方法及示例
2013/10/28 Javascript
jQuery获取动态生成的元素示例
2014/06/15 Javascript
Node.js中创建和管理外部进程详解
2014/08/16 Javascript
详解jquery中$.ajax方法提交表单
2014/11/03 Javascript
Boostrap实现的登录界面实例代码
2016/10/09 Javascript
微信小程序开发之圆形菜单 仿建行圆形菜单实例
2016/12/12 Javascript
浅谈Angular的$q, defer, promise
2016/12/20 Javascript
Vue.js实战之组件之间的数据传递
2017/04/01 Javascript
vue.js实现单选框、复选框和下拉框示例
2017/07/18 Javascript
JavaScript实现浅拷贝与深拷贝的方法分析
2018/07/05 Javascript
js实现黑白div块画空心的图形
2018/12/13 Javascript
Vue常用API、高级API的相关总结
2021/02/02 Vue.js
python sort、sorted高级排序技巧
2014/11/21 Python
python妙用之编码的转换详解
2017/04/21 Python
浅谈python和C语言混编的几种方式(推荐)
2017/09/27 Python
pandas的连接函数concat()函数的具体使用方法
2019/07/09 Python
python递归函数求n的阶乘,优缺点及递归次数设置方式
2020/04/02 Python
HTML5进度条特效
2014/12/18 HTML / CSS
Kathmandu英国网站:新西兰户外运动品牌
2017/03/27 全球购物
迷你唐卡软皮鞋:Minnetonka Moccasin
2018/05/01 全球购物
Delphi工程师笔试题
2013/09/21 面试题
开学典礼决心书
2014/03/11 职场文书
领导班子民主生活会整改措施(工商局)
2014/09/21 职场文书
2014副镇长民主生活会个人对照检查材料思想汇报
2014/09/30 职场文书
高中生期中考试失利检讨书
2014/10/23 职场文书
2014年个人思想工作总结
2014/11/27 职场文书
学校2015年纠风工作总结
2015/05/15 职场文书
html+css实现赛博朋克风格按钮
2021/05/26 HTML / CSS
Java 将PPT幻灯片转为HTML文件的实现思路
2021/06/11 Java/Android
使用scrapy实现增量式爬取方式
2022/06/21 Python
ubuntu20.04虚拟机无法上网的问题及解决
2022/12/24 Servers