Копируем текст внутри контейнера по нажатию кнопки
Этот скрипт предназначен для копирования текста внутри контейнера по нажатию на кнопку. В данном случае будет скопирован только текст, любая HTML-разметка будет проигнорирована.
const copyText = () => {
const button = document.getElementById('button');
const container = document.getElementById('container');
// Если вдруг нет кнопки и/или контейнера, то дальше делать нечего.
if (!button || !container) return;
button.addEventListener('click', () => {
// Получаем текст из контейнера.
const textToCopy = container.innerText;
// Создаем временное текстовое поле для копирования.
const tempTextarea = document.createElement('textarea');
tempTextarea.value = textToCopy;
// Добавляем текстовое поле в документ, чтобы выполнить копирование.
document.body.appendChild(tempTextarea);
// Выделяем текст и выполняем команду копирования.
tempTextarea.select();
document.execCommand('copy');
// Удаляем временное поле из документа.
document.body.removeChild(tempTextarea);
});
}
copyText();
Впрочем, чтобы скрипт позволил копировать HTML вместо текста, потребуется всего-лишь заменить container.innerText;
на container.innerHtml;
.