vue使用drag与drop实现拖拽的示例代码


Posted in Javascript onSeptember 07, 2017

在功能中有一项是需要实现拖拽的。虽然最终项目没有采取这样的拖拽方式,但是,当初也是费了九牛二虎之力完成了这个功能。增加了对函数的更深理解。下面就再重现一下代码。

下面是代码片段:

<div 
class="fav-fold-panel" 
v-if="!typeChange" 
draggable="true" @dragstart="drag($event)"

@dragover="allowDrop($event)">

<!-- 面板内容 -->

<div 
class="favTitle-card" :data="favPanelAllData"
v-if="foldDone">

<favPanel
v-for="item
in favPanelAllData"
v-if="item.id===1" :favTitle="item.title"

renameText="更名"
foldText="折叠"

unfoldText="展开" :favListData="item.content"
draggable="true" @dragstart="drag($event)">

<ul 
class="ul-content">

<li 
class="ul-content-li" :favCommonList1="item.content"></li>

</ul>

<!-- <favPopPanel :show="popShow" @onHide="popShow = false"></favPopPanel> -->

<!-- <div :favListData="item.favListData"></div> -->

</favPanel>

</div>


<div
class="fav-card-create" :data="favPanelAllData">

<favFooter>

<el-button
type="primary" @click="addFoldFuc">新建文件夹</el-button>

<el-button-group>

<el-button @click="foldFuc">全部折叠</el-button>

<el-button @click="foldFuc">全部展开</el-button>

</el-button-group>

</favFooter>

</div>

</div>

另一段代码:

<div 
class="favTitle-card" :data="favPanelAllData"
draggable="true"
ondragstart="drag(event)">

<favPanel
v-for="item
in favPanelAllData"
v-if="item.id===2" :favTitle="item.title"

renameText="更名"
foldText="没我"
unfoldText="没你" :favListData="item.content">

<ul 
class="ul-content">

<li 
class="ul-content-li" :favListData="item.content" :if="!foldDone"></li>

</ul>

</favPanel>

</div>

function部分

drag(event) {

dom = event.currentTarget

},

drop(event) {

event.preventDefault()

event.target.appendChild(dom)

},


allowDrop(event) {

event.preventDefault()

}

然后,drag与drop系统的研究明天再说。

这样写的坏处是什么,还有为什么不采取这种方法实现拖拽。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript生成/解析dom的CDATA类型的字段的代码
Apr 22 Javascript
JavaScript中数组对象的那些自带方法介绍
Mar 12 Javascript
js判断当页面无法回退时关闭网页否则就history.go(-1)
Aug 07 Javascript
Javascript 拖拽雏形中的一些问题(逐行分析代码,让你轻松了拖拽的原理)
Jan 23 Javascript
js限制文本框只能输入中文的方法
Aug 11 Javascript
JS+CSS实现简易实用的滑动门菜单效果
Sep 18 Javascript
原生js实现百叶窗效果及原理介绍
Apr 12 Javascript
js修改onclick动作的四种方法(推荐)
Aug 18 Javascript
JS实现简易刻度时钟示例代码
Mar 11 Javascript
使用jQuery实现两个div中按钮互换位置的实例代码
Sep 21 jQuery
微信小程序判断用户是否需要再次授权获取个人信息
Jul 18 Javascript
Electron整合React使用搭建开发环境的步骤详解
Jun 07 Javascript
SelectPage v2.4 发布新增纯下拉列表和关闭分页功能
Sep 07 #Javascript
JS禁止浏览器右键查看元素或按F12审查元素自动关闭页面示例代码
Sep 07 #Javascript
阿里大于短信验证码node koa2的实现代码(最新)
Sep 07 #Javascript
bootstrap-table组合表头的实现方法
Sep 07 #Javascript
react-native-tab-navigator组件的基本使用示例代码
Sep 07 #Javascript
基于Bootstrap table组件实现多层表头的实例代码
Sep 07 #Javascript
详解React native全局变量的使用(跨组件的通信)
Sep 07 #Javascript
You might like
请离开include_once和require_once
2013/07/18 PHP
php 无限级分类,超级简单的无限级分类,支持输出树状图
2014/06/29 PHP
php数据序列化测试实例详解
2017/08/12 PHP
JQuery获取文本框中字符长度的代码
2011/09/29 Javascript
本地图片预览(支持IE6/IE7/IE8/Firefox3)经验总结
2013/03/25 Javascript
深入理解javascript变量声明
2014/11/20 Javascript
利用jQuery插件imgAreaSelect实现图片上传裁剪(放大缩小)
2016/12/02 Javascript
jQuery图片拖动组件Dropzone用法示例
2017/01/17 Javascript
JS手机端touch事件计算滑动距离的方法示例
2017/10/26 Javascript
使用Vue.js开发微信小程序开源框架mpvue解析
2018/03/20 Javascript
实例讲解JS中pop使用方法
2019/01/27 Javascript
JavaScript面向对象中接口实现方法详解
2019/07/24 Javascript
Vue组件模板及组件互相引用代码实例
2020/03/11 Javascript
js里面的变量范围分享
2020/07/18 Javascript
vue中如何添加百度统计代码
2020/12/19 Vue.js
Python中动态检测编码chardet的使用教程
2017/07/06 Python
python针对不定分隔符切割提取字符串的方法
2018/10/26 Python
关于pytorch多GPU训练实例与性能对比分析
2019/08/19 Python
python爬虫爬取笔趣网小说网站过程图解
2019/11/18 Python
Html5饼图绘制实现统计图的方法
2020/08/05 HTML / CSS
RentCars.com巴西:汽车租赁网站
2016/08/22 全球购物
中间件分为哪几类
2012/03/14 面试题
J2EE中的容器都包括哪些
2013/08/21 面试题
护理专科毕业推荐信
2013/11/10 职场文书
影视制作岗位职责
2013/12/04 职场文书
秘书专业自荐信范文
2013/12/26 职场文书
期中考试反思800字
2014/05/01 职场文书
领导干部群众路线教育实践活动剖析材料
2014/10/10 职场文书
个人简历自我评价怎么写
2015/03/10 职场文书
学术会议通知
2015/04/15 职场文书
团委副书记工作总结
2015/08/14 职场文书
幼儿园大班教师随笔
2015/08/14 职场文书
来探秘“德国中小企业”的成功之道
2019/07/26 职场文书
导游词之嵊泗列岛
2019/10/30 职场文书
详解gantt甘特图可拖拽、编辑(vue、react都可用 highcharts)
2021/11/27 Vue.js
Mac电脑OS系统下安装Nginx的详细教程
2022/04/14 Servers