Для jquery есть draggable и dropzone. Разобраться "что на самом деле происходит" тоже
не особо сложно.
Не совсем понятно зачем нужно эмулировать. Скорее всего достаточно посмотреть в инспекторе какие команды уходят на сервер при перетаскивании, и можете отправлять их сколько угодно вообще в обход интерфейса.
Это если там нет никаких хитрых защит, чтобы юзер таскал именно мышкой. А если хитрые защиты есть, то и эмуляция может обломаться (если проверяется
isTrusted, например).