基于jquery的页面元素拖拽组件
来源:互联网 发布:电脑设计软件 编辑:程序博客网 时间:2024/06/15 09:50
很多人都希望页面元素可以像窗体元素一样操作,其实绝大多数的操作都是可行的,虽然像easyUI等这样的大牌插件也整合有drag操作,但部分功能不能满足个人要求,闲来无事,基于jquery写了一个可以复用js插件实现组件拖拽。
功能特点:
- 拖拽时组件整体半透明
- 拖拽时组件处于最顶层
- 拖拽结束后恢复原透明度
- 拖拽结束后恢复其z轴原层级
插件代码 drag.js
// JavaScript Document$(document).ready(function(e) { var zIndex=0; var mousex=0,mousey=0; var divLeft,divTop; $('.drag').css("cursor","pointer");//将光标改为手型 //鼠标单击目标时,保存初始的z轴索引顺序,和初始的目标的坐标以及鼠标光标的坐标,并进一步绑定一个鼠标移动事件 $('.drag').mousedown(function(e) { var $pdiv=$(this).parent("div"); zIndex=$pdiv.css("z-index"); var offset=$pdiv.offset(); divLeft=parseInt(offset.left,10); divTop=parseInt(offset.top,10); $pdiv.css({"margin-left":"0px","left":divLeft}); mousex=e.pageX; mousey=e.pageY; $(this).bind('mousemove',dragElement); }); //鼠标移动操作 function dragElement(event){ var left=divLeft+(event.pageX-mousex); var top=divTop+(event.pageY -mousey); $(this).parent("div").css({ 'top':top+'px', 'left':left+'px', 'postion':'absolute', 'z-index':'100', 'opacity':'0.6' }); return false; } //鼠标释放时,接触移动绑定,恢复css样式初始 $(document).mouseup(function(e) { $('.drag').unbind('mousemove'); $('.drag').parent("div").css({"opacity":"1","z-index":zIndex}); }); });
引入文件,先引入jquery,再引入drag插件
<script src="${pageContext.servletContext.contextPath}/Scripts/jquery-3.1.0.min.js"></script><script src="${pageContext.servletContext.contextPath}/Scripts/drag.js"></script>
使用时,外层使用div,里面放置用来拖拽的标签加class属性为drag,例如于标题栏,或者直接img进行拖拽。
<div style="position: absolute;"><div class="drag">用我拖拽</div>要显示的内容</div>
同志们,可以试试了
Created by 薛萌
阅读全文
0 0
- 基于jquery的页面元素拖拽组件
- 基于jQuery的时间段组件
- 基于jQuery的TreeGrid组件
- 基于jQuery的TreeGrid组件
- jquery改变页面元素的属性
- jQuery,选择器,选择父页面的元素
- JQuery取得页面元素的坐标值
- JQuery获取页面ID元素的值
- Jquery获取页面的动态元素
- jQuery -> 基于当前元素的遍历
- 基于jquery的treeTable树表组件
- 基于jQuery的TreeGrid组件详解
- 基于jquery的联动下拉框组件
- 基于jQuery的TreeGrid组件详解
- 基于jquery的轮播图组件开发-1
- 基于jquery的组件开发-mask
- 基于jquery的web组件实现方式
- 【JQuery】动态控制页面元素
- HTML表格和选择
- 程序员的思考
- 针对jsp&servlet服务器遇到的404错误
- caffe分类小例子
- JavaEE之-Spring基本介绍
- 基于jquery的页面元素拖拽组件
- xynuoj +-字符串
- 10.31(周二)
- shell脚本 颜色背景的显示方法
- MNIST数据集训练
- redis详解-(7)有序集合
- JS 数组 返回值方法
- 媒体报道:美国银行即将关闭三个数据中心
- nuxt 引用scss 文件