vue拖拽插件(弹框拖拽)

// =======拖拽 插件
cnpm install vuedraggable
import draggable from ‘vuedraggable‘

<draggable v-model="tags" :move="getdata" @update="datadragEnd">
<transition-group>
<div class="testdiv" v-for="element in tags" :key="element.id">
{{element.id}}
</div>
</transition-group>
</draggable>

data() {
return {
msg: ‘Welcome to Your Vue.js App‘,
tags: [{
id: 1
}, {
id: 2
}]
}
},
methods: {
getdata(evt) {
console.log(evt.draggedContext.element.id)
},
datadragEnd(evt) {
console.log(‘拖动前的索引 :‘ + evt.oldIndex)
console.log(‘拖动后的索引 :‘ + evt.newIndex)
console.log(this.tags)
}
},

原文地址:https://www.cnblogs.com/sx00/p/10913915.html

时间: 2024-07-29 21:47:48

vue拖拽插件(弹框拖拽)的相关文章

position定位解决弹框拖拽出屏幕的情况

position定位有四种情况: 1 static默认情况,没有定位,元素正常出现在文档流中. 2 fixed 绝对定位 元素的位置相对于浏览器窗口是固定位置. 即使窗口是滚动的它也不会移动:定位脱离文档流,不占据位置. 3 relative相对定位,相对其正常位置,还在文档流中,占据位置. 相对定位元素经常被用来作为绝对定位元素的容器块. 4 absolute绝对定位 绝对定位的元素的位置相对于最近的已定位父元素,如果元素没有已定位的父元素,那么它的位置相对于<html> 定位脱离文档流,不

插件———弹框

场景:弹出提示信息:可添加提示信息 pop-layer.js /** * Created by AAA on 2017/9/21. */ var popLayer = { init (option) { this.initOptions(option); this.initElement(option); document.getElementsByClassName("close-btn")[0].onclick = () => { this.closeLayer() }; t

1:完成留言效果 2:完成拖动标题控制弹框拖拽 3 : 给弹框添加一个自定义的右键菜单

css部分 *{ margin: 0; padding: 0;}body,html{ width: 100%; height: 100%; position: relative;}li{ margin-top: 10px; list-style: none; border-bottom: 1px dashed #ccc;}#box{ width: 500px; border: 2px solid #ccc; padding: 30px;}#btn{ margin-top: 20px; margi

vue自定义插件-弹框

<template> <transition name="msgbox"> <div v-if="show" class="msgbox-container" :class="className"> <header>{{title}}</header> <div class="content-body"> <div>弹出内容

在vue中引入layer弹框的简易方法

npm i --save layui-layer 2.在main.js中引入 import layer from "layui-layer"; 3.然后就可以在各个组件中使用layer了 实例: layer.confirm('您是如何看待前端开发?', { btn: ['重要','奇葩'] //按钮 }, function(){ layer.msg('的确很重要', {icon: 1}); }, function(){ layer.msg('也可以这样', { time: 20000,

jquery实战——弹出框拖拽效果

今天主要记录一下弹出框拖拽效果: 一.移动弹出窗口的步骤是:按下鼠标左键——移动鼠标——松开鼠标左键停止移动 二.主要思想: 按下鼠标左键:$('div').mousedown(function(e){}) 移动鼠标,获取鼠标当前坐标值:$(document).mousemove(function(e){}) 松开鼠标左键停止移动:$('div').mouseup(function(e){ $(document).unbind('mousemove');  //即当鼠标左键被释放时解除mouse

原生js实现拖拽弹框的效果

研究了一上午,模仿了拖拽弹框的效果,小有成就 <script type="text/javascript"> function getByClass(classname,parent){ var par=parent||document, eles=par.getElementsByTagName("*"), needArr=[]; for(var i=0;i<eles.length;i++){ if(eles[i].className==clas

一步一步实现JS拖拽插件

js拖拽是常见的网页效果,本文将从零开始实现一个简单的js插件. 一.js拖拽插件的原理 常见的拖拽操作是什么样的呢?整过过程大概有下面几个步骤: 1.用鼠标点击被拖拽的元素 2.按住鼠标不放,移动鼠标 3.拖拽元素到一定位置,放开鼠标 这里的过程涉及到三个dom事件:onmousedown,onmousemove,onmouseup.所以拖拽的基本思路就是: 1.用鼠标点击被拖拽的元素触发onmousedown (1)设置当前元素的可拖拽为true,表示可以拖拽 (2)记录当前鼠标的坐标x,y

jquery拖拽插件Easydrag

在一些有弹出框的页面,会经常用到拖拽效果来增加用户体验,避免因弹出框遮挡一些元素.如果用原生的js来写的话,js兼容性很不好控制,经常由于浏览器事件的不统一而影响效果,今天给大家介绍一个拖拽插件easydrag,EasyDrag可以指定可拖动的区域,一个setHandler搞定,不错开源是个好东西,只需要一行代码便可轻松在主流浏览器上 使用方法示例: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &q