设置图像可动态拖动

Set image draggable dynamically

本文关键字:拖动 动态 图像 设置      更新时间:2023-09-26

我有问题设置我的图像是可拖动的。这段代码似乎不起作用:

var thumb = document.createElement("img");
thumb.setAttribute('draggable', "true");

我创建并添加我的图像到DOM像这样:var thumb = document.createElement("img");

        thumb.setAttribute('draggable', "true");
        thumb.setAttribute('alt', label);
        thumb.setAttribute('id', "dhmvseries_" + label);
        thumb.setAttribute("dhmvseriesuuid",label);
        thumb.ondragstart =  thumbDragStart;
        thumb.ondragend = thumbDragEnd;
        thumb.onmouseover = displayThumbInfo;
        thumb.onmouseout = hideThumbInfo;
var thinner = createElement("div", "dhThumbImage dhRounded");
thinner.appendChild(thumb);

我在我正在构建的用于闭包编译器的公共域库中使用它们。

/** drag(node n, property p)
 *  sets dataTransfer text to value of property p when node n is dragged
**/
function drag(n,p){n['draggable']=1
    n['ondragstart']=function(a){a.dataTransfer.setData("Text",a.target?a.target[p]:a.srcElement[p])}}
/** drop(node n, function f)
 *  sets a drop event handler for node n that uses function f as its handler
 *  function f will be passed: the target node and the dataTransfer "Text" value
ex. var f=function(t,s){t.style.backgroundColor=s} //sets background the Text value
 *  * the "Text" is set to the value of property p in the drag event
 *  see drag(node n, property p)
**/
function drop(n,f){n['ondragover']=F
    n['ondrop']=function(a){f(n,a.dataTransfer.getData("Text"))
    return!!0}}