UNPKG

el-dragmove

Version:
66 lines (49 loc) 2.94 kB
# 使用文档 | Usage ![拖动模型.gif](https://cdn.nlark.com/yuque/0/2022/gif/743297/1667698967145-6341c3a8-58d6-4225-8cd1-7c02178cf863.gif#averageHue=%23d9d8d8&clientId=u4ef5f103-1e0f-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=883&id=ue204ed0f&margin=%5Bobject%20Object%5D&name=%E6%8B%96%E5%8A%A8%E6%A8%A1%E5%9E%8B.gif&originHeight=883&originWidth=1344&originalType=binary&ratio=1&rotation=0&showTitle=false&size=481399&status=done&style=none&taskId=u02d99430-12c9-4114-ae9f-fc5605ed464&title=&width=1344#averageHue=%23d9d8d8&crop=0&crop=0&crop=1&crop=1&id=xwaSU&originHeight=883&originWidth=1344&originalType=binary&ratio=1&rotation=0&showTitle=false&status=done&style=none&title=) ## 在线demo | Online Demo - PC👉 [PC Online Demo](https://unpkg.com/el-dragmove@latest/example/index.html) - H5👉 [H5 Online Demo](https://unpkg.com/el-dragmove@latest/example/h5.html) ## 使用示例 ### CDN方式使用 | Using with CDN ```html <div id="rect-1" class="rect">1</div> <script src="https://unpkg.com/el-dragmove@latest/dist/index.min.js"></script> <script> const targetEl = document.getElementById('rect-1') const moveModel = new DragMoveModel({ targetEl: targetEl }, (x, y, z) => console.log(x, y, z)) </script> ``` ### 模块化项目中使用 | Using in Project 1. 安装 | install ```bash npm i el-dragmove@latest -S ``` 2. 引入 | import el-dragmove ```javascript import Dragmove from 'el-dragmove/dist/es' const el = document.getElementById('test') const elDragmove = new Dragmove({ targetEl: el }) // 销毁监听事件 // elDragmove.destroy() ``` ## 构造函数初始化参数 | Initialize some parameters - config,个性化配置 - callback, 回调函数,获取鼠标移动距离 ### config参数配置 | config`s properties | 属性 property | 说明 description | 类型 type | 默认值 defalut | 可选值 optional | | --- | --- | --- | --- | --- | | targetEl | 目标元素,需要拖动的元素<br>The element that needs to be dragged | HTMLElement | document.body | | | limitMoveBorder | 是否限制拖动边界<br>Whether to restrict drag boundaries | Boolean | false | | | moveMode | 拖动实现方式,transform为transform-translate方式移动,position为top,left方式移动<br>Drag implementation | String | transform |`transform`,`position` | | h5 | 是否是h5<br>Whether it is H5 or not | Boolean | false | | | disableMoveEl | 是否限制移动<br>Whether to restrict movement | Boolean | false | | | maxMoveX | x轴最大移动距离<br>Maximum distance traveled on the x-axis | Number | 1000000 | | | maxMoveY | y轴最大移动距离<br>Maximum distance traveled on the y-axis | Number | 1000000 | | ## 销毁方法 | Destroy ```javascript moveModel.destroy() ``` # 实现原理解析 | How to implement [https://juejin.cn/post/7165405623725588493](https://juejin.cn/post/7165405623725588493)