
但是有时候我们只想特定的列能够进行拖拽,特别是在有input输入框的时候,如果包含input的列也能进行拖拽的话,会存在鼠标不能拖动选中input输入框里面内容的问题,因为但在input上拖动时,已经启动了拖拽功能,所有会导致无法选中input里面的内容,最直接效果就是,但你想复制粘贴input里面内容的时候,你会发现压根选不到里面的内容,而是被拖着走。
给需要拖动的列加一个共同的class,比如
然后运用handle属性就可以啦,handle就是用来控制允许拖动的元素的
业务场景:经过百度搜索解决方案
1 :给点击的事件添加阻止冒泡方法 event.stopPropagation()
2 :给拖拽盒子里的子元素添加 pointer-events: bounding-box 属性
Sortable.create(document.getElementById('collter1'), {group : {
name : "words",
pull : true,
put : true
},
animation : 150, //动画参数
onAdd : function(evt) {//拖拽时候添加有新的节点的时候发生该事件
},
onUpdate : function(evt) {//拖拽更新节点位置发生该事件
console.log('onUpdate.foo:', [evt.item, evt.from])
},
onRemove : function(evt) {//删除拖拽节点的时候促发该事件
console.log('onRemove.foo:', [evt.item, evt.from])
},
onStart : function(evt) {//开始拖拽出发该函数
console.log('onStart.foo:', [evt.item, evt.from])
},
onSort : function(evt) {//发生排序发生该事件
console.log('onUpdate.foo:', [evt.item, evt.from])
},
onEnd : function(evt) {//拖拽完毕之后发生该事件
//alert(evt.oldIndex)
//alert(evt.newIndex)
if(evt.oldIndex<evt.newIndex){
for (var i = evt.oldIndexi <json[id].lengthi++) {
if(i >evt.newIndex){
break
}else{
var name,str,style,num
name = json[id][i+1]["name"]
num = json[id][i+1]["num"]
str = json[id][i+1]["str"]
style = json[id][i+1]["style"]
json[id][i+1]["name"] = json[id][i]["name"]
json[id][i+1]["num"] = json[id][i]["num"]
json[id][i+1]["str"] = json[id][i]["str"]
json[id][i+1]["style"] = json[id][i]["style"]
json[id][i]["name"] = name
json[id][i]["num"] = num
json[id][i]["str"] = str
json[id][i]["style"] = style
}
}
}
if(evt.oldIndex>evt.newIndex){
for (var i = evt.oldIndexi >= 0 i--) {
if(i <evt.newIndex){
break
}else{
var name,str,style,num
name = json[id][i-1]["name"]
num = json[id][i-1]["num"]
str = json[id][i-1]["str"]
style = json[id][i-1]["style"]
json[id][i-1]["name"] = json[id][i]["name"]
json[id][i-1]["num"] = json[id][i]["num"]
json[id][i-1]["str"] = json[id][i]["str"]
json[id][i-1]["style"] = json[id][i]["style"]
json[id][i]["name"] = name
json[id][i]["num"] = num
json[id][i]["str"] = str
json[id][i]["style"] = style
}
}
}
}
})
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)