Элемент: событие copy
Базовая линия Широко доступно
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с марта 2017 года.
Событие copy API буфера обмена Clipboard API срабатывает, когда пользователь инициирует действие копирования через пользовательский интерфейс браузера.
Стандартное действие события — копирование выделенного текста (если таковой имеется) в буфер обмена.
Обработчик этого события может изменить содержимое буфера обмена, вызвав setData(format, data) для свойства ClipboardEvent.clipboardData события и отменив стандартное действие события с помощью event.preventDefault().
Однако, обработчик не может прочитать данные из буфера обмена.
Можно создать и вызвать синтетическое событие синтетическое copy , но это не повлияет на системный буфер обмена.
Это событие проходит по иерархии, является отменяемым и составным.
Синтаксис
Используйте имя события в методах, таких как addEventListener(), или установите свойство обработчика событий.
addEventListener("copy", (event) => {});
oncopy = (event) => {};
Тип события
Тип ClipboardEvent. Наследуется от Event.
Примеры
Пример
HTML
<div class="source" contenteditable="true">Copy text from this box.</div> <div class="target" contenteditable="true">And paste it into this one.</div>
JavaScript
const source = document.querySelector("div.source");
source.addEventListener("copy", (event) => {
const selection = document.getSelection();
event.clipboardData.setData("text/plain", selection.toString().toUpperCase());
event.preventDefault();
});
Результат
Спецификации
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
copy_event |
1 | 12 | 22 | ≤12.1 | 3 | 18 | 22 | ≤12.1 | 3 | 1.0 | 4.4 |
См. также
© 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/Element/copy_event