Przeciąganie danych do elementu HTML
Adobe AIR 1.0 i wersje późniejsze
Zachowanie domyślne pozwala na przeciąganie do edytowanych obszarów strony tylko tekstu. Programista może określić, że element i jego elementy podrzędne będą edytowalne, umieszczając atrybut contenteditable w znaczniku otwierającym elementu. Możliwe jest również ustawienie całego dokumentu jako edytowalnego przez ustawienie właściwości designMode obiektu dokumentu na wartość "on".
Alternatywne zachowanie przeciągania do wewnątrz można obsłużyć na stronie, obsługując zdarzenia dragenter, dragover i drop dla dowolnego elementu, który akceptuje przeciągane dane.
Włączanie przeciągania do wewnątrz
Aby obsłużyć gest przeciągania do wewnątrz, należy najpierw anulować zachowanie domyślne. Należy wykrywać zdarzenia dragenter i dragover wszystkich elementów HTML, które mają być używane jako cele upuszczania. W modułach obsługi dla tych zdarzeń należy wywołać metodę preventDefault() wywołanego obiektu zdarzenia. Anulowanie domyślnego zdarzenia pozwala nieedytowalnym obszarom na odbieranie upuszczania.
Pobieranie upuszczonych danych
Dostęp do upuszczonych danych można uzyskać w module obsługi dla zdarzenia ondrop:
function doDrop(event){
droppedText = event.dataTransfer.getData("text/plain");
}
Aby odczytać dane ze schowka, należy użyć metody dataTransfer.getData(), przekazując typ MIME formatu danych do odczytu. Dostępne formaty danych można znaleźć za pomocą właściwości types obiektu dataTransfer. Tablica types zawiera ciąg znaków typu MIME dla każdego dostępnego formatu.
Po anulowaniu domyślnego zachowania w zdarzeniach dragenter lub dragover należy wstawić wszystkie upuszczone dane we właściwym miejscu w dokumencie. Nie istnieje żaden interfejs API do konwertowania położenia myszy na punkt wstawiania elementu. To ograniczenie utrudnia implementację gestów przeciągania typu wstawienie.