Мешает реализация редактора. Там используется особая схема "прорисовки" строк, и каждая строка - это отдельный dom-элемент.
Кажется в спецификации явно говорится, что браузер не должен допускать симуляцию drag'n'drop.
Я пришел к одной идее - покрыть текст слоем с атрибутом draggable.
В обычных условиях клик по контейнеру будет перехватываться и preventDefault'иться и перетаскивания не будет происходить. А когда нужно будет перетащить текст, клик будет освобожден, и запустится перетаскивание этого слоя. А там уже по dragstart можно установить нужные данные (перетаскиваемый кусок текста) и словить событие drop
Маленькое неудобство - не будет видно призрачного текста при перетаскивании. Но это и не нужно особо.
Вот думаю что если попробовать отрисовать текст в canvas-е и установить через e.dataTransfer.setDragImage() , но в параметре должен быть Image а не Canvas. Можно ли из Canvas создать Image ?
|