js表格拖拽
html部分
<div id="chenkbox">
<div id="tableSort">
<ol>
<li> 序列 </li>
<li> 名称 </li>
<li> 数量 </li>
<li> 单价(Q点) </li>
<li> 总计(Q点) </li>
</ol>
<ul>
<li>1</li>
<li>农场话费A</li>
<li>2</li>
<li>50</li>
<li>100</li>
</ul>
<ul>
<li>2</li>
<li>飞车道具C</li>
<li>1</li>
<li>80</li>
<li>80</li>
</ul>
<ul>
<li>3</li>
<li>空间K</li>
<li>1</li>
<li>120</li>
<li>120</li>
</ul>
<ul>
<li>4</li>
<li>农场狗粮C</li>
<li>4</li>
<li>60</li>
<li>240</li>
</ul>
<ul>
<li>5</li>
<li>音速种子</li>
<li>2</li>
<li>110</li>
<li>220</li>
</ul>
<ul>
<li>6</li>
<li>农场化肥D</li>
<li>5</li>
<li>60</li>
<li>300</li>
</ul>
<ul>
<li>7</li>
<li>AVA装扮C</li>
<li>1</li>
<li>300</li>
<li>300</li>
</ul>
<ul>
<li>8</li>
<li>三国道具C</li>
<li>15</li>
<li>60</li>
<li>900</li>
</ul>
<ul>
<li>9</li>
<li>DNF道具B</li>
<li>4</li>
<li>300</li>
<li>1200</li>
</ul>
<ul>
<li>10</li>
<li>农场化肥H</li>
<li>6</li>
<li>80</li>
<li>120</li>
</ul>
<ul>
<li>11</li>
<li>农场化肥B</li>
<li>1</li>
<li>80</li>
<li>80</li>
</ul>
<ul>
<li>12</li>
<li>Q宠元宝</li>
<li>100</li>
<li>1</li>
<li>100</li>
</ul>
<ul>
<li>13</li>
<li>三国道具K</li>
<li>9</li>
<li>20</li>
<li>180</li>
</ul> <div id="box"></div>
</div>
</div>
css部分
* {
margin:;
padding:;
}
body {
font-family: "microsoft yahei";
background-color: #eee;
user-select: none;
}
#chenkbox {
margin: 100px auto;
width: 800px;
position: relative; }
#tableSort{
border-right:#0066cc 1px solid;
border-bottom: #0066cc 1px solid;
height: 434px;
} li{
list-style: none;
}
#box {
position: absolute;
display: none;
background: #fff;
text-align: center;
top:;
background-color: #000;
background-color: rgba(0,0,0,0.8);
color: #fff;
height: 100%;
cursor: move;
}
#box p {
line-height:;
}
#chenkbox ol{
height: 30px;
line-height: 30px;
}
#chenkbox ul{
width: 100%;
height: 30px;
cursor: move;
line-height: 30px; }
#chenkbox li{
width: 19.87%;
float: left; border-top: #0066cc 1px solid;
border-left: #0066cc 1px solid;
text-align: center; }
js部分
var ochek=document.getElementById("chenkbox");
var ul=document.getElementsByTagName('ul');
var box=document.getElementById("box");
var arr=[];
for(var i=0;i<ul.length;i++){
ul[i].onmousedown=function(){
var e=e||window.event;
var w=this.offsetWidth;
var h=this.offsetHeight;
var t=ochek.offsetTop;
var st=this.offsetTop;
var ss=this.innerHTML;
_this=this;//鼠标按下时的ul
box.innerHTML=ss;
box.style.display="block";
box.style.width=w+"px";
box.style.height=h+"px";
box.style.top=st+"px";
for(var j=0;j<ul.length;j++){
arr.push(ul[j].offsetTop);//所有行的top值
}
document.onmousemove=function(e){
var e=e||window.event;
box.style.top=e.clientY-t+"px"; //移动时的top值
}
document.onmouseup=function(e){
var e=e||window.event;
var index='';
for(var j=0;j<arr.length;j++){
if(arr[j]<e.clientY-t){//得到当移动的top值大于ul的top值时的i
index=j;
}
}
_this.innerHTML=ul[index].innerHTML;//鼠标按下时的ul的innerHTML等于移动到的ul的innerHTML
ul[index].innerHTML= box.innerHTML;//移动到的ul的innerHTML等于box中的innerHTML
arr.splice(0,arr.length);//清空数组
box.style.display="none";
box.innerHTML='';
ul[i].onmousedown=null;
document.onmousemove=null; }
}
}
js表格拖拽的更多相关文章
- js 实现table表格拖拽和点击表头升降序排序
js 实现table表格拖拽和点击表头升降序排序,写的比较乱,用的时候可以把其中的一些模块函数提取出来 样式,由于是可拖拽表格,所以样式 table tr th{cursor:move;} js实现 ...
- react拖拽(表格拖拽排序、普通拖拽排序以及树形拖拽排序)
表格拖拽排序:组件地址:https://reactabular.js.org/#/drag-and-drop 拖动的排序是用React-DnD:React-DnD:http://react-dnd.g ...
- 实现Bootstrap表格拖拽
实现Bootstrap表格拖拽: 需要引入jquery.min.js.bootstrap相关文件,以及jquery.dragsort-0.5.2.js 代码如下: <html> <h ...
- Js元素拖拽功能实现
Js元素拖拽功能实现 需要解决的问题 最近项目遇到了一个问题,就是用户某个操作需要弹出一个自定义的内容输入框,但是有个缺点,当浏览太大的时候没办法点击确认和取消按钮,应为这个弹出框是采用绝对定位的,取 ...
- js之拖拽事件
js之拖拽事件 api:https://www.runoob.com/jsref/event-ondrag.html 拖拽事件是js原生的事件,使用时在div上添加 draggable="t ...
- 根据HTML5的新方法 drag & drop 方法实现表格拖拽实例
上一次学习了html5的drag和drop方法,传送门 就自己写了个例子加深自己对drag和drop的理解.不过一开始不是很简单,遇到了不少问题.还好网络万能的,什么都能查到,总算完成了. 说明和详 ...
- JS—实现拖拽
JS中的拖拽示例: 1)实现拖拽思路:当鼠标按下和拖拽过程中,鼠标与拖拽物体之间的相对距离保持不变 2)实现拖拽遇到的问题: 问题1:当鼠标按下移动过快时,离开了拖拽的物体时 ...
- js鼠标拖拽
html <div id="box"> </div> css ;;} #box{width:200px;height:200px;background:cy ...
- 原生Js实现拖拽(适用于pc和移动端)
效果: HTML和CSS部分 <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...
随机推荐
- python简单爬豆瓣电影排名
爬豆瓣电影 网站分析: 1 打开https://movie.douban.com,选择 [排行榜],然后随便选择一类型,我这里选择科幻 2 一直浏览网页,发现没有下一的标签,是下滑再加载的,可 ...
- 稀疏表示step by step(转)
原文地址:稀疏表示step by step(转)作者:野火春风 稀疏表示step by step(1) 声明:本人属于绝对的新手,刚刚接触“稀疏表示”这个领域.之所以写下以下的若干个连载,是鼓 ...
- springboot 集成eureka 超详细配置
撸了今年阿里.头条和美团的面试,我有一个重要发现.......>>> 原文链接: https://blog.csdn.net/nanbiebao6522/article/detail ...
- Eureka客户端无法连接服务注册中心
转载自:https://my.oschina.net/kousm/blog/2249003 服务端 application.yml配置 spring: application: name: eurek ...
- webServices学习一(了解基础和作用。)
一.第一部分 1. 带着几个问题学习: l 什么是WebService? l 它能做什么? l 为什么要学习WebService? l 学习WebService ...
- mybatis学习:mybatis注解开发一对一的查询配置
实体类: public class Account { private Integer id; private Integer uid; private Double money; private U ...
- NoClassDefFoundError: Could not initialize class org.apache.cxf.jaxrs.provider.ProviderFactory org.springframework.aop.support.AopUtils.isCglibProxyClass
报错: 2018-05-03 10:35:20 377 ERROR org.apache.juli.logging.DirectJDKLog.log:181 - Servlet.service() f ...
- 2019阿里云开年Hi购季大促主会场全攻略!
2019阿里云云上采购季活动已经于2月25日正式开启,从已开放的活动页面来看,活动分为三个阶段: 2月25日-3月04日的活动报名阶段.3月04日-3月16日的新购满返+5折抢购阶段.3月16日-3月 ...
- spring cloud深入学习(五)-----熔断器Hystrix
雪崩效应 在微服务架构中通常会有多个服务层调用,基础服务的故障可能会导致级联故障,进而造成整个系统不可用的情况,这种现象被称为服务雪崩效应.服务雪崩效应是一种因“服务提供者”的不可用导致“服务消费者” ...
- PyCharm常用技巧集合
PyCharm常用技巧集合 一.添加或者修改文件模板 File>settings>Editor>File and Code Templates>Python Script 你可 ...