Как скопировать в буфер обмена в 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 браузеров .

Вернуться на верх