Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 拖放;将自定义HTML设置为拖放图像_Javascript_Html - Fatal编程技术网

Javascript 拖放;将自定义HTML设置为拖放图像

Javascript 拖放;将自定义HTML设置为拖放图像,javascript,html,Javascript,Html,是否可以以某种方式将我的自定义html对象设置为event.dataTransfer.setDragImage(myCustomHtml,0,0) 我试过这样做 var x=$doc.getElementById("row_selected_notification"); event.dataTransfer.setDragImage(x, 100, 100); 但它不起作用 由于我是通过Java实现的,所以我使用的是本机方法,因此jQuery不是我的选项。您可以拖动创建自定义元素,也可以使用

是否可以以某种方式将我的自定义html对象设置为
event.dataTransfer.setDragImage(myCustomHtml,0,0)

我试过这样做

var x=$doc.getElementById("row_selected_notification");
event.dataTransfer.setDragImage(x, 100, 100);
但它不起作用


由于我是通过Java实现的,所以我使用的是本机方法,因此jQuery不是我的选项。

您可以拖动创建自定义元素,也可以使用现有元素。 如果要装箱元素,则必须确保将其添加到DOM后不可见。我刚刚向create元素添加了一个负的top值来隐藏它,但我确信还有其他方法可以解决这个问题

下面是一个示例,其中包含一个现有元素和一个将要创建的元素

var foo=document.getElementsByClassName(“拖动我”).item(0),
bar=document.getElementsByClassName(“拖动我”).item(1);
//拖动foo并创建自定义元素。
foo.addEventListener(“dragstart”,函数(e){
var elem=document.createElement(“div”);
elem.id=“拖动重影”;
elem.textNode=“拖动”;
elem.style.position=“绝对”;
elem.style.top=“-1000px”;
文件.正文.附件(elem);
e、 dataTransfer.setDragImage(elem,0,0);
},假);
//拖动工具栏并使用foo作为重影图像
bar.addEventListener(“dragstart”,函数(e){
e、 dataTransfer.setDragImage(foo,0,0);
},假);
//让我们移除dragend上创建的幽灵元素
文件.附录列表(“dragend”,功能(e){
var ghost=document.getElementById(“拖动ghost”);
if(ghost.parentNode){
ghost.parentNode.removeChild(ghost);
}
},假)
。拖动我{
宽度:100px;
填充:30px0;
文本对齐:居中;
颜色:白色;
显示:内联块;
}
.拖动我:第n个孩子(1){
背景颜色:绿色;
}
.拖动我:第n个孩子(2){
背景色:红色;
}
#拖鬼{
宽度:200px;
高度:200px;
背景颜色:黄色;
}
拖我走

拖动我的工具栏
这在IE中不起作用,因为它不支持
setDragImage
。查看IE的工作环境