Dra data ut från ett HTML-element

Adobe AIR 1.0 och senare

Standardbeteendet tillåter att det mesta innehållet på en HTML-sida kopieras genom släppning. Du kan kontrollera vilket innehåll som tillåts att dras med hjälp av CSS-egenskaperna -webkit-user-select och -webkit-user-drag .

Åsidosätt standardbeteendet för utdragning i hanteraren för händelsen dragstart . Anropa metoden setData() för egenskapen dataTransfer för händelseobjektet om du vill placera egna data i dragningsgesten.

Om du vill ange vilken dragningsgest som ett källobjekt stöder när du inte använder dig av standardbeteendet, ställer du in egenskapen dataTransfer.effectAllowed för händelseobjektet som skickas till händelsen dragstart . Du kan välja valfri kombination av effekter. Om ett källelement stöder både effekten copy och link ställer du in egenskapen på "copyLink" .

Ställa in data som har dragits

Lägg till data för dragningsgesten i hanteraren för händelsen dragstart med egenskapen dataTransfer . Använd metoden dataTransfer.setData() om du vill placera data i Urklipp, och skicka MIME-typen och data som ska överföras.

Om du till exempel har ett bildelement i programmet, med ID imageOfGeorge , använder du följande dragstart-händelsehanterare. Det här exemplet lägger till representationer av en bild på George i flera dataformat, som ökar chanserna för att andra program ska kunna använda de data som dras.

function dragStartHandler(event){         
    event.dataTransfer.effectAllowed = "copy"; 
     
    var dragImage = document.getElementById("imageOfGeorge"); 
    var dragFile = new air.File(dragImage.src); 
    event.dataTransfer.setData("text/plain","A picture of George"); 
    event.dataTransfer.setData("image/x-vnd.adobe.air.bitmap", dragImage); 
    event.dataTransfer.setData("application/x-vnd.adobe.air.file-list", 
                                new Array(dragFile)); 
}
Obs! När du anropar metoden setData() för objektet dataTransfer läggs inga data till med standardbeteendet för dra och släpp.