Поведение по умолчанию позволяет копировать большую часть HTML-содержимого перетаскиванием. Содержимое, которое можно перетаскивать, контролируется свойствами CSS
-webkit-user-select
и
-webkit-user-drag
.
Переопределите поведение жеста «перетаскивания из» по умолчанию в обработчике события
dragstart
. Вызовите метод
setData()
свойства
dataTransfer
объекта события для включения собственных данных в перетаскивание.
Если поведение по умолчанию не используется, то для указания поддерживаемых объектом-источником эффектов перетаскивания необходимо задать свойство
dataTransfer.effectAllowed
объекта события, отправляемого в ответ на
dragstart
. Может быть выбрано любое сочетание эффектов. Например, если элемент-источник поддерживает и эффект
copy
, и эффект
link
, задайте свойству значение
"copyLink"
.
Настройка перетаскиваемых данных
Добавьте данные для жеста перетаскивания в обработчик события
dragstart
с помощью свойства
dataTransfer
. С помощью метода
dataTransfer.setData()
данные помещаются в буфер обмена, при этом передается тип MIME и перемещаемые данные.
Например, если в приложении присутствует некое изображение с идентификатором
imageOfGeorge
, можно использовать показанный ниже обработчик события dragstart. В этом примере добавляются представления изображения в разных форматах данных, что увеличивает список приложений, которые смогут использовать перетаскиваемые данные.
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));
}
Примечание.
При вызове метода
setData()
объекта
dataTransfer
поведение перетаскивания по умолчанию не подразумевает добавления каких-либо данных.
|
|
|