DataTransfer
Базовая Широко доступна
Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с июля 2015 года.
Объект DataTransfer используется для хранения любых данных, передаваемых между контекстами, например, при операции перетаскивания или чтении/записи буфера обмена. Он может содержать один или несколько элементов данных, каждый из которых может иметь один или несколько типов данных.
DataTransfer был в первую очередь разработан для API перетаскивания и перемещения HTML, как свойство DragEvent.dataTransfer, и до сих пор определен в разделе HTML перетаскивания, но теперь он также используется другими API, такими как ClipboardEvent.clipboardData и InputEvent.dataTransfer. Однако другие API используют только определенные части его интерфейса, игнорируя свойства, такие как dropEffect. Документация DataTransfer в основном будет обсуждать его использование в операциях перетаскивания, и вы должны обратиться к документации других API для использования DataTransfer в этих контекстах.
Конструктор
DataTransfer()-
Создаёт и возвращает новый объект
DataTransfer.
Свойства экземпляра
DataTransfer.dropEffect-
Получает тип операции перетаскивания, выбранной в настоящее время, или устанавливает операцию на новый тип. Значение должно быть
none,copy,linkилиmove. DataTransfer.effectAllowed-
Предоставляет все типы операций, которые возможны. Должно быть одним из
none,copy,copyLink,copyMove,link,linkMove,move,allилиuninitialized. -
DataTransfer.filesТолько для чтения -
Содержит список всех локальных файлов, доступных в передаче данных. Если операция перетаскивания не включает перетаскивание файлов, это свойство является пустым списком.
-
DataTransfer.itemsТолько для чтения -
Предоставляет объект
DataTransferItemList, который является списком всех данных перетаскивания. -
DataTransfer.typesТолько для чтения -
Массив строк, указывающий форматы, установленные в событии
dragstart.
Методы экземпляра
-
DataTransfer.addElement()Экспериментальный Нестандартный -
Устанавливает исходный элемент перетаскивания для данного элемента. Это будет тот элемент, для которого срабатывают события
dragиdragend, а не стандартный целевой элемент (узел, который был перетащен). Специфично для Firefox. DataTransfer.clearData()-
Удаляет данные, связанные с заданным типом. Аргумент type необязателен. Если type пустой или не указан, удаляются данные, связанные со всеми типами. Если данных для указанного типа не существует или передача данных не содержит данных, этот метод не повлияет.
DataTransfer.getData()-
Извлекает данные для заданного типа или пустую строку, если данных для этого типа не существует или передача данных не содержит данных.
DataTransfer.setData()-
Устанавливает данные для данного типа. Если данные для типа не существуют, они добавляются в конец, так что последний элемент в списке types будет новым форматом. Если данные для типа уже существуют, существующие данные заменяются на том же месте.
DataTransfer.setDragImage()-
Устанавливает изображение, используемое для перетаскивания, если необходимо использовать пользовательское изображение.
Примеры
Каждая функция и свойство, указанные в этом документе, имеют свою страницу справки, и каждая страница справки либо напрямую включает пример интерфейса, либо содержит ссылку на пример.
Спецификации
| Спецификация |
|---|
| HTML # the-datatransfer-interface |
Совместимость браузеров
| Настольные компьютеры | Мобильные | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
DataTransfer |
59 | 17 | 62 | 46 | 14.1 | 59 | 62 | 44 | 14.5 | 8.0 | 59 |
DataTransfer |
3 | 12 | 3.5Начиная с Firefox 52, свойствоDataTransfer.types возвращает замороженный массив DOMString в соответствии со спецификацией, а не DOMStringList. |
12 | 4 | 18 | 4Начиная с Firefox для Android 52, свойствоDataTransfer.types возвращает замороженный массив DOMString в соответствии со спецификацией, а не DOMStringList. |
12 | 3.2 | 1.0 | ≤37 |
addElement |
Нет | Нет | 3.5 | Нет | Нет | Нет | 4 | Нет | Нет | Нет | Нет |
clearData |
3 | 12 | 3.5 | ≤12.1 | 4 | 18 | 4 | ≤12.1 | 3.2 | 1.0 | ≤37 |
dropEffect |
3 | 12 | 3.5 | ≤12.1 | 4 | 18 | 4 | ≤12.1 | 3.2 | 1.0 | ≤37 |
effectAllowed |
3 | 12 | 3.5 | ≤12.1 | 4 | 18 | 4 | ≤12.1 | 3.2 | 1.0 | ≤37 |
files |
3 | 12 | 3.6 | ≤12.1 | 4 | 18 | 4 | ≤12.1 | 3.2 | 1.0 | ≤37 |
getData |
3 | 12 | 3.5 | ≤12.1 | 4 | 18 | 4 | ≤12.1 | 3.2 | 1.0 | ≤37 |
items |
3 | 12 | 50 | 12 | 11.1 | 18 | 52 | 12 | 11.3 | 1.0 | ≤37 |
mozCursor |
Нет | Нет | 3.5 | Нет | Нет | Нет | 4 | Нет | Нет | Нет | Нет |
mozSourceNode |
Нет | Нет | 4 | Нет | Нет | Нет | 4 | Нет | Нет | Нет | Нет |
mozUserCancelled |
Нет | Нет | 3.5 | Нет | Нет | Нет | 4 | Нет | Нет | Нет | Нет |
setData |
3 | 12 | 3.5 | 12 | 5 | 18 | 4 | 12 | 5 | 1.0 | ≤37 |
setDragImage |
3 | 18 | 3.5 | ≤12.1 | 4 | 18 | 4 | ≤12.1 | 3.2 | 1.0 | ≤37 |
types |
3 | 12 | 3.5 | ≤12.1Начиная с Opera 12, возвращаетсяText вместо text/plain |
4 | 18 | 4 | ≤12.1 | 3.2 | 1.0 | ≤37 |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/DataTransfer