360浏览器在拖拽的时候会打开新窗口问题

我用的是sortable.js实现的列表拖拽,在其他浏览器都没有这个问题,只有360浏览器会这样。问题描述:

**360浏览器在拖拽的时候会新打开一个窗口,并且会以列表上面的文字作为搜索文字。**
我在代码里面加入了如下代码:
 document.body.ondrop = function (event) {
    event.preventDefault();
    event.stopPropagation();
 };

但是也没有生效,现在不知道该怎么解决,寻求帮助

阅读 4.2k
2 个回答

今天也碰到这个问题,看了下Sortable的源码,说下解决方案。
360有个超级拖拽的功能,会读取选中的文本

var sortable = new Sortable(el, {
    // 这个默认方法会默认设置选中文本
    //setData: function () {
        //dataTransfer.setData('Text', dragEl.textContent); 
    //},
    // 覆盖 setData 为空函数就可以了
    setData: function(){}
}}

Vue.Draggable

<draggable v-model="myArray" :setData="()=>{}">
   <div v-for="element in myArray" :key="element.id">{{element.name}}</div>
</draggable>
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题