Буфер обмена
Безопасный контекст: Данная функция доступна только в безопасных контекстах (HTTPS), в некоторых или во всех поддерживающих браузерах.
Интерфейс Clipboard API буфера обмена предоставляет чтение и запись содержимого буфера обмена системы. Это позволяет веб-приложению реализовать функции вырезания, копирования и вставки.
Буфер обмена системы доступен через глобальное свойство Navigator.clipboard.
Все методы API буфера обмена работают асинхронно; они возвращают Promise, который разрешается после завершения доступа к буферу обмена. Обещание отклоняется, если доступ к буферу обмена запрещен.
Все методы требуют безопасный контекст. Дополнительные требования к использованию API обсуждаются в разделе Учет безопасности раздела обзора API.
Методы экземпляра
Clipboard основан на интерфейсе EventTarget и включает его методы.
read()-
Запрашивает произвольные данные (например, изображения) из буфера обмена, возвращая
Promise, который разрешается массивом объектовClipboardItem, содержащих содержимое буфера обмена. readText()-
Запрашивает текст из системного буфера обмена, возвращая
Promise, который выполняется строкой, содержащей текст буфера обмена, как только он станет доступен. write()-
Записывает произвольные данные в системный буфер обмена, возвращая
Promise, который разрешается, когда операция завершается. writeText()-
Записывает текст в системный буфер обмена, возвращая
Promise, который разрешается, как только текст полностью скопирован в буфер обмена.
Спецификации
| Спецификация |
|---|
| Clipboard API и события # clipboard-interface |
Совместимость с браузерами
| Рабочий стол | Мобильный | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari в IOS | Samsung Internet | WebView Android | |
Clipboard |
66 | 79 | 63 | 53 | 13.1 | 66 | 63 | 47 | 13.4 | 9.0 | 66 |
read |
76Пользователь должен предоставить разрешениеclipboard-read. |
79Пользователь должен предоставить разрешениеclipboard-read. |
127["Этот метод должен вызываться внутри обработчиков событий пользовательского жеста.", "Веб-расширения требуют разрешениеclipboardRead в манифесте для чтения данных. С этим разрешением расширение не требует взаимодействия пользователя и не отображает запрос на вставку.", "Запрос на вставку отображается при чтении буфера обмена. Если буфер обмена содержит контент одного происхождения, запрос подавляется."] |
63Пользователь должен предоставить разрешениеclipboard-read. |
13.1 | 76Пользователь должен предоставить разрешениеclipboard-read. |
127["Этот метод должен вызываться внутри обработчиков событий пользовательского жеста.", "Веб-расширения требуют разрешениеclipboardRead в манифесте для чтения данных. С этим разрешением расширение не требует взаимодействия пользователя и не отображает запрос на вставку.", "Запрос на вставку отображается при чтении буфера обмена. Если буфер обмена содержит контент одного происхождения, запрос подавляется."] |
54Пользователь должен предоставить разрешениеclipboard-read. |
13.4 | 12.0Пользователь должен предоставить разрешениеclipboard-read. |
76Пользователь должен предоставить разрешениеclipboard-read. |
readText |
66Пользователь должен предоставить разрешениеclipboard-read. |
79Пользователь должен предоставить разрешениеclipboard-read. |
125["Этот метод должен вызываться внутри обработчиков событий пользовательского жеста.", "Веб-расширения требуют разрешениеclipboardRead в манифесте для чтения данных. С этим разрешением расширение не требует взаимодействия пользователя и не отображает запрос на вставку.", "Запрос на вставку отображается при чтении буфера обмена. Если буфер обмена содержит контент одного происхождения, запрос подавляется."] |
53Пользователь должен предоставить разрешениеclipboard-read. |
13.1 | 66Пользователь должен предоставить разрешениеclipboard-read. |
125["Этот метод должен вызываться внутри обработчиков событий пользовательского жеста.", "Веб-расширения требуют разрешениеclipboardRead в манифесте для чтения данных. С этим разрешением расширение не требует взаимодействия пользователя и не отображает запрос на вставку.", "Запрос на вставку отображается при чтении буфера обмена. Если буфер обмена содержит контент одного происхождения, запрос подавляется."] |
47Пользователь должен предоставить разрешениеclipboard-read. |
13.4 | 9.0Пользователь должен предоставить разрешениеclipboard-read. |
66Пользователь должен предоставить разрешениеclipboard-read. |
write |
76["С версии 107 этот метод должен вызываться внутри обработчиков событий пользовательского жеста, или пользователь должен предоставить разрешениеclipboard-write.", "До версии 107 пользователь должен предоставить разрешение clipboard-write."] |
79 | 127["Этот метод должен вызываться внутри обработчиков событий пользовательского жеста.", "Веб-расширения требуют разрешениеclipboardWrite в манифесте для чтения данных. С этим разрешением расширение не требует взаимодействия пользователя и не отображает запрос на вставку.", "Запрос на вставку отображается при чтении буфера обмена. Если буфер обмена содержит контент одного происхождения, запрос подавляется."] |
63["С версии 93 этот метод должен вызываться внутри обработчиков событий пользовательского жеста, или пользователь должен предоставить разрешениеclipboard-write.", "До версии 93 пользователь должен предоставить разрешение clipboard-write."] |
13.1 | 76["С версии 107 этот метод должен вызываться внутри обработчиков событий пользовательского жеста, или пользователь должен предоставить разрешениеclipboard-write.", "До версии 107 пользователь должен предоставить разрешение clipboard-write."] |
127["Этот метод должен вызываться внутри обработчиков событий пользовательского жеста.", "Веб-расширения требуют разрешениеclipboardWrite в манифесте для чтения данных. С этим разрешением расширение не требует взаимодействия пользователя и не отображает запрос на вставку.", "Запрос на вставку отображается при чтении буфера обмена. Если буфер обмена содержит контент одного происхождения, запрос подавляется."] |
54["С версии 73 этот метод должен вызываться внутри обработчиков событий пользовательского жеста, или пользователь должен предоставить разрешениеclipboard-write.", "До версии 73 пользователь должен предоставить разрешение clipboard-write."] |
13.4 | 12.0["С версии 21.0 этот метод должен вызываться внутри обработчиков событий пользовательского жеста, или пользователь должен предоставить разрешениеclipboard-write.", "До версии 21.0 пользователь должен предоставить разрешение clipboard-write."] |
76["С версии 107 этот метод должен вызываться внутри обработчиков событий пользовательского жеста, или пользователь должен предоставить разрешениеclipboard-write.", "До версии 107 пользователь должен предоставить разрешение clipboard-write."] |
writeText |
66["С версии 107 этот метод должен вызываться в обработчиках событий жестов пользователя, либо пользователь должен предоставить разрешениеclipboard-write.", "До версии 107 пользователь должен предоставить разрешение clipboard-write."] |
79["С версии 107 этот метод должен вызываться в обработчиках событий жестов пользователя, либо пользователь должен предоставить разрешениеclipboard-write.", "До версии 107 пользователь должен предоставить разрешение clipboard-write."] |
63["Этот метод должен вызываться в обработчиках событий жестов пользователя.", "Веб-расширениям для чтения данных требуется разрешениеclipboardRead в манифесте. С этим разрешением расширение не требует взаимодействия пользователя и не отображает приглашение вставки.", "При чтении буфера обмена отображается приглашение вставки. Если буфер обмена содержит контент того же происхождения, приглашение подавляется."] |
53["С версии 93 этот метод должен вызываться в обработчиках событий жестов пользователя, либо пользователь должен предоставить разрешениеclipboard-write.", "До версии 93 пользователь должен предоставить разрешение clipboard-write."] |
13.1Этот метод должен вызываться в обработчиках событий жестов пользователя. |
66["С версии 107 этот метод должен вызываться в обработчиках событий жестов пользователя, либо пользователь должен предоставить разрешениеclipboard-write.", "До версии 107 пользователь должен предоставить разрешение clipboard-write."] |
63["Этот метод должен вызываться в обработчиках событий жестов пользователя.", "Веб-расширениям для чтения данных требуется разрешениеclipboardRead в манифесте. С этим разрешением расширение не требует взаимодействия пользователя и не отображает приглашение вставки.", "При чтении буфера обмена отображается приглашение вставки. Если буфер обмена содержит контент того же происхождения, приглашение подавляется."] |
47["С версии 73 этот метод должен вызываться в обработчиках событий жестов пользователя, либо пользователь должен предоставить разрешениеclipboard-write.", "До версии 73 пользователь должен предоставить разрешение clipboard-write."] |
13.4Этот метод должен вызываться в обработчиках событий жестов пользователя. |
9.0["С версии 21.0 этот метод должен вызываться в обработчиках событий жестов пользователя, либо пользователь должен предоставить разрешениеclipboard-write.", "До версии 21.0 пользователь должен предоставить разрешение clipboard-write."] |
66["С версии 107 этот метод должен вызываться в обработчиках событий жестов пользователя, либо пользователь должен предоставить разрешениеclipboard-write.", "До версии 107 пользователь должен предоставить разрешение clipboard-write."] |
|---|
См. также
© 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/Clipboard