Menampal Imej dari Papan Klip ke Gmail: Cara Ia Dilakukan dalam Chrome 12
Pengumuman Google tentang keupayaan untuk menampal imej terus dari papan keratan ke dalam Gmail menggunakan Chrome 12 telah mencetuskan rasa ingin tahu tentang mekanisme asas. Walaupun menggunakan versi Chrome terkini, sesetengah pengguna tidak dapat mencari maklumat tentang cara peningkatan ini dilaksanakan dalam Webkit.
Setelah melakukan percubaan, nampaknya Chrome telah menerima pakai spesifikasi API Papan Klip yang baru muncul. Spesifikasi ini membolehkan definisi pengendali acara "tampal" yang boleh mengakses harta event.clipboardData.items. Dengan memanggil getAsFile() pada setiap item, objek Blob boleh diperolehi. FileReader kemudiannya boleh digunakan pada Blob ini untuk menentukan kandungannya.
Di bawah ialah coretan kod yang menunjukkan cara mendapatkan URL data untuk imej yang ditampal:
document.onpaste = function (event) { var items = (event.clipboardData || event.originalEvent.clipboardData).items; for (var index in items) { var item = items[index]; if (item.kind === 'file') { var blob = item.getAsFile(); var reader = new FileReader(); reader.onload = function (event) { console.log(event.target.result); // data URL! }; reader.readAsDataURL(blob); } } };
Sebaik sahaja URL data tersedia, imej boleh dipaparkan. Sebagai alternatif, ia boleh dimuat naik menggunakan FormData atau readAsBinaryString.
Adalah penting untuk ambil perhatian bahawa walaupun JSON.stringify mungkin tidak berfungsi pada senarai item secara langsung, jenis MIME boleh diperoleh dengan mengulangi setiap item menggunakan struktur data DataTransferItem .
Atas ialah kandungan terperinci Bagaimanakah Menampal Imej daripada Papan Klip Berfungsi dalam Kemas Kini Chrome 12 Gmail?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!