[英]Is it possible to paste from clipboard onclick in Javascript?
用例用於在私有 Intranet 上輸入數據:用戶從谷歌文檔、保管箱文本文檔等復制和粘貼,並且必須粘貼到具有許多輸入的表單中。 為了加快速度,如果用戶可以從文檔中復制和粘貼,並且當他們單擊輸入字段時,它會在他們左鍵單擊時自動粘貼,那就太好了。
我看過一些較舊的問題,但似乎這是(並且有充分的理由)安全風險。 但是,私有 Intranet 上的所有用戶都知道這一點,只是想節省時間。 有沒有允許這樣做的瀏覽器或技術?
此外,我們可以使用任何支持它的瀏覽器或環境。 我如何才能實現此功能以節省時間?
剪貼板 API 包含在 Chrome 66 中。在此處檢查 jsfiddle: https ://jsfiddle.net/zm490d6a/
相關代碼是:
async function paste(input) {
const text = await navigator.clipboard.readText();
input.value = text;
}
如果您使用的是 Chrome 66 或更高版本,這將起作用。 但是,請注意,出於安全原因,您必須授予網頁訪問剪貼板的權限,因此當您第一次單擊該頁面上的輸入時,它會彈出詢問您訪問剪貼板的權限。 一旦您授予它訪問權限,對輸入的任何點擊都會粘貼剪貼板上的任何內容。
在這里,我只使用 readText,但您也可以將 readData 用於剪貼板上的圖像等。 https://developer.mozilla.org/en-US/docs/Web/API/Clipboard
嘗試
el.addEventListener('click', (e) => {
document.execCommand('paste');
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.