¿Cómo simular HTML5 arrastrar y soltar eventos en javascript?

Como título, estoy tratando de simular un evento de arrastrar y soltar HTML5 en javascript.

He buscado en jquery.ui.simulate y también la función de simulaciónaquí. Parece que ambos se pueden usar para simular el arrastrar y soltar simulando mousedown, mousemove y mouseup, que funciona con los objetos jQuery UI.

Pero los eventos de arrastrar y soltar en páginas comositio de demostración de arrastrar y soltar No parecen ser simulables utilizando los mismos métodos. Activar un mousedown no parece disparar el evento HTML5 de dragstart.

¿Hay una manera de obtener los eventos de inicio de dragstart para ser disparados en base a una simulación de mousedown / mousemove / etc, o hay una manera de simular los eventos de dragstart (y luego soltarlos) directamente?

He intentado modificar elfunción de simulación encontrada en SO para agregar el evento de dragstart HTML5 para que pueda probar algo como lo siguiente en la página de demostración

 simulate( document.querySelector('#three'), 'dragstart')

pero recibo un error porque no estoy seguro de cómo crear el objeto dataTransfer en el evento simulado dragstart.

Básicamente, aceptaré cualquier respuesta que me permita arrastrar el elemento 'three' al elemento 'bin' en eldemo arrastrar y soltar la página ya sea utilizando jquery.ui.simluate (u otra biblioteca) o utilizando una versión modificada desimular la función Encontré en SO.

Respuestas a la pregunta(2)

Su respuesta a la pregunta