Jquery 使用触摸事件将JAVASCRIPT从浏览器拖放到桌面?

Jquery 使用触摸事件将JAVASCRIPT从浏览器拖放到桌面?,jquery,html,security,touch-event,data-transfer-objects,Jquery,Html,Security,Touch Event,Data Transfer Objects,我正在开发这个网站,它应该允许用户在屏幕外拖放包含html画布的div。使用jquery的.draggable()函数将div设置为可拖动,如下所示: div_to_drag.draggable({ //some .draggable() properties }) 注意:jquery.draggable api可在以下位置找到: 当用户开始将包含画布的div拖离屏幕时,我将canavs转换为一个图像,并在用户放下时将图像保存到桌面。用户不使用鼠标,而是使用触摸屏将div拖离屏幕。触

我正在开发这个网站,它应该允许用户在屏幕外拖放包含html画布的div。使用jquery的.draggable()函数将div设置为可拖动,如下所示:

div_to_drag.draggable({
    //some .draggable() properties
})
注意:jquery.draggable api可在以下位置找到:

当用户开始将包含画布的div拖离屏幕时,我将canavs转换为一个图像,并在用户放下时将图像保存到桌面。用户不使用鼠标,而是使用触摸屏将div拖离屏幕。触摸功能通过magictouch.js启用。以下是当用户开始拖动时处理的代码:

div_to_drag[0].addEventListener('touchstart', function (event) {
    // If 2 fingers are inside the div, user is dragging the div
    if (event.targetTouches.length == 2) {
        //convert canvas inside div to image
        //get datatransfer property of event and attach the image to it
    }
}, false);
注:magictouch.js遵循w3c标准,定义如下:

现在,问题是要从屏幕上拖放,唯一的方法似乎是使用html5的“dataTransfer”属性,它是在html5拖动事件期间由浏览器创建的。如何使用magictouch.js的touch事件获取datatransfer属性?我曾尝试通过编程方式创建html5拖动事件,但这会生成空数据传输属性,正如这篇旧文章所解释的:

因此,出于安全考虑,我无法在touchstart期间手动创建datatransfer属性。但数据传输是我允许用户拖放到桌面的唯一方式。使用触摸事件时,是否有方法生成有效的数据传输属性?任何帮助都将不胜感激