基于js实现数组相邻元素上移下移


Posted in Javascript onMay 19, 2020

实现效果:

基于js实现数组相邻元素上移下移

即需要实现当前元素与相邻元素交换位置,

当上移时,则是当前元素与上一元素调换位置;当下移时,则是当前元素与下一元素调换位置。

实现代码:

js:

//点击上移
clickUp(index){
 this.swapArray(this.tableData, index-1, index);
},
//点击下移
clickDown(index){
 this.swapArray(this.tableData, index, index+1);
},
//数组元素互换位置
swapArray(arr, index1, index2) {
 arr[index1] = arr.splice(index2, 1, arr[index1])[0];
 return arr;
},

html:

<el-table-column label="顺序调整" min-width="80" align="center">
 <template slot-scope="scope">
  <div class="img_style">
   <img src="@/assets/images/up_01.png" v-if="scope.$index == 0">
   <img src="@/assets/images/up.png" @click="clickUp(scope.$index)" v-else>
   <img src="@/assets/images/down_01.png" v-if="scope.$index == tableData.length - 1">
   <img src="@/assets/images/down.png" @click="clickDown(scope.$index)" v-else>
  </div>
 </template>
</el-table-column>

注意:

1.思想就是在数组中交换两个元素的位置,使用splice()的替换;

2.上移是跟上一元素交换位置,下移是跟下一元素交换位置,不同体现在调用调换方法时传入的index参数不同。

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

Javascript 相关文章推荐
获取HTML DOM节点元素的方法的总结
Aug 21 Javascript
JS面向对象编程 for Cookie
Sep 19 Javascript
iframe的onload在Chrome/Opera中执行两次Bug的解决方法
Mar 17 Javascript
jQuery EasyUI API 中文文档 - NumberBox数字框
Oct 13 Javascript
一个简单的网站访问JS计数器 刷新1次加1次访问
Sep 20 Javascript
javascript数组遍历for与for in区别详解
Dec 04 Javascript
JS中的Replace方法使用经验分享
May 20 Javascript
javascript编程实现栈的方法详解【经典数据结构】
Apr 11 Javascript
jquery实现侧边栏左右伸缩效果的示例
Dec 19 jQuery
vue单页缓存存在的问题及解决方案(小结)
Sep 25 Javascript
JS+css3实现幻灯片轮播图
Aug 14 Javascript
js简单粗暴的发布订阅示例代码
Jan 23 Javascript
Node.js API详解之 zlib模块用法分析
May 19 #Javascript
微信jssdk踩坑之签名错误invalid signature
May 19 #Javascript
JavaScript实现简单的弹窗效果
May 19 #Javascript
js实现自定义右键菜单
May 18 #Javascript
微信小程序手动添加收货地址省市区联动
May 18 #Javascript
怎么理解wx.navigateTo的events参数使用详情
May 18 #Javascript
django简单的前后端分离的数据传输实例 axios
May 18 #Javascript
You might like
PHP 实现多服务器共享 SESSION 数据
2009/08/15 PHP
PHP微信发送推送消息乱码的解决方法
2019/02/28 PHP
filemanage功能中用到的lib.js
2007/04/08 Javascript
Prototype 学习 Prototype对象
2009/07/12 Javascript
node.js中的fs.readdirSync方法使用说明
2014/12/17 Javascript
配置Grunt的Task时通配符支持和动态生成文件名问题
2015/09/06 Javascript
bootstrap——bootstrapTable实现隐藏列的示例
2017/01/14 Javascript
ES6中module模块化开发实例浅析
2017/04/06 Javascript
jQuery操作css样式
2017/05/15 jQuery
通过fastclick源码分析彻底解决tap“点透”
2017/12/24 Javascript
js实现轮播图的完整代码
2020/10/26 Javascript
JavaScript动态创建二维数组的方法示例
2019/02/01 Javascript
JavaScript 扩展运算符用法实例小结【基于ES6】
2019/06/17 Javascript
JS数组属性去重并校验重复数据
2020/01/10 Javascript
在vue中实现给每个页面顶部设置title
2020/07/29 Javascript
OpenLayers3实现地图显示功能
2020/09/25 Javascript
JavaScript实现点击切换功能
2021/01/27 Javascript
[38:51]2014 DOTA2国际邀请赛中国区预选赛 Orenda VS LGD-CDEC
2014/05/22 DOTA
利用python打印出菱形、三角形以及矩形的方法实例
2017/08/08 Python
python itchat实现微信自动回复的示例代码
2017/08/14 Python
python使用 HTMLTestRunner.py生成测试报告
2017/10/20 Python
Django外键(ForeignKey)操作以及related_name的作用详解
2019/07/29 Python
Django 限制访问频率的思路详解
2019/12/24 Python
Python 面向对象之类class和对象基本用法示例
2020/02/02 Python
python opencv实现简易画图板
2020/08/27 Python
网页中的电话号码如何实现一键直呼效果_附示例
2016/03/15 HTML / CSS
HTML5所有标签汇总及标签意义解释
2015/03/12 HTML / CSS
意大利咖啡、浓缩咖啡和浓缩咖啡机:illy caffe
2019/03/20 全球购物
幼儿园的门卫岗位职责
2014/04/10 职场文书
提拔干部考察材料
2014/05/26 职场文书
基层党员干部四风问题整改方向和措施
2014/09/25 职场文书
群众路线剖析材料(四风)
2014/11/05 职场文书
2015年先进个人自荐书
2015/03/24 职场文书
婚庆开业庆典主持词
2015/06/30 职场文书
“学党章、守党纪、讲党规”学习心得体会
2016/01/14 职场文书
CSS3实现的水平标题菜单
2021/04/14 HTML / CSS