Как скопировать в буфер обмена в JavaScript? подскажите
я использовал этот код
const copyBtns = [...document.getElementsByClassName('copy')]
copyBtns.forEach(btn=> btn.addEventListener('click', ()=>{
content = btn.getAttribute('data-content')
navigator.clipboard.writeText(content)
btn.textContent = "تم النسخ"
}))
копирование не работает по клику в мобильном, а на любом компьютере работает. каково решение?
В прошлом я использовал этот подход для веб-приложений, в которых с помощью jQuery создается скрытое поле <input>
и оттуда копируется текст. Кажется, это хорошо работает в кросс-платформенных приложениях, включая устройства Android и iOS.
const temp = $('<input>');
$('body').append(temp);
temp.val('YOUR STRING HERE').select();
document.execCommand('copy');
temp.remove();
Я подозреваю, что причина неработоспособности вашего кода заключается в том, что мобильный браузер не имеет доступа (или поддержки) clipboard
. Can I Use? - отличный ресурс для определения поддержки CSS/HTML и других API браузеров .