在HTML5中将'dragImage'设置为 div 元素时,我遇到了问题。 问题是当辅助器 - setDragImage(helper,x,y)函数的第一个参数未在dom中显示或被隐藏时,在触发'dragstart'事件时它不可见。 看看我的小提琴:http://jsfiddle.net/AemN5/10/
在小提琴中,我正在渲染助手(它被涂成黄色),而不是 尝试拖动绿色可拖动框,帮助器附加到鼠标时 拖动开始。但是,请尝试单击帮助程序上方的按钮 隐藏帮手。再试一次拖动绿色可拖动的盒子 - 没有帮手 附在我的鼠标上。
任何想法为什么会发生并且更重要如何解决问题?我的主要目标是拥有隐形帮助器,并且只有当用户开始拖动时才会将其显示为附加到游标上。
答案 0 :(得分:2)
以下是一种可能的解决方案http://jsfiddle.net/AemN5/12/
答案 1 :(得分:0)
尝试这样做..
chrome要求图像至少显示,直到拖动开始。
$("[draggable]").on("dragstart", function(e) {
$("#img1").show();
e.originalEvent.dataTransfer.setDragImage(helper, 50, 50);
setTimeout(function(){
$("#img1").hide();
},0);
});