Clipboard API dapat menyalin teks setelah pengunjung mengaktifkan kontrol. Karena akses clipboard sensitif terhadap izin dan konteks, jalankan langsung dari pengendali klik dan laporkan bila tidak tersedia.
copyButton.addEventListener("click", async () => {
try {
await navigator.clipboard.writeText(textToCopy);
status.textContent = "Copied";
} catch {
status.textContent = "Could not copy. Select the text and copy it manually.";
}
});Buatlah tindakan tersebut dapat dimengerti
- Gunakan tombol asli dengan label seperti “Salin tautan”.
- Umumkan hasilnya di wilayah status terdekat ketika pesan tersebut terlewatkan.
- Biarkan teks asli tetap dapat dipilih sehingga pengunjung memiliki cara lain untuk menyalinnya.
Tangani pembatasan browser
Penulisan clipboard umumnya memerlukan konteks yang aman dan isyarat pengguna. Jangan diam-diam berpura-pura penyalinan berhasil ketika janjinya ditolak.
Uji dengan aktivasi keyboard dan izin clipboard ditolak. Penggantian yang jelas lebih baik daripada tombol yang tampaknya berfungsi tetapi tidak mengubah papan klip.
