«Скопировать в буфер обмена» — функционал, который мы все используем несколько раз на дню, но клиентские API имеют свои недостатки; некоторые из них выводят раздражающее окошко с вопросом «Вы уверены?» всякий раз при попытке что-то скопировать, а это не очень хорошо отражается на юзабилити и общей картине приложения или сайта.
Достойное решение — библиотека clipboard.js, не требующая Flash, наличия фреймворка типа jQuery и работающая во всех современных браузерах.
Установка clipboard.js
Вы можете установить ее с помощью npm или bower:
npm install clipboard --save bower install clipboard --save
Если у вас не установлены менеджеры пакетов, скачайте ZIP-файл с официального сайта.
Подключение clipboard.js
Во-первых, подключите скрипт, расположенный d папке dist или загрузите его из CDN перед закрывающим тегом body:
<script src="dist/clipboard.min.js"></script>
Теперь вам нужно создать его экземпляр, передавая DOM-селектор, HTML элемент, или список HTML-элементов.
new Clipboard('.btn');
Внутри нам нужно собрать все элементы, которые совпадают с нашим селектором и присоединить приемники событий каждому из них.
Никакого Flash, простое API и работает во всех основных браузерах! Все это делает clipboard.js привлекательным для web-разработчиков. Дни подтормаживающего Flash сочтены – да здравствуют веб-технологии!