需求大概是:在瀏覽器中點(diǎn)某個(gè)‘復(fù)制’按鈕之后,寫入該按鈕的某個(gè)屬性至剪貼板。我開始是這樣做的:添加一個(gè) input 元素,把它移到用戶看不見的位置,把目標(biāo)字符串寫入其中,調(diào)用它的 select 方法選中剛輸入的內(nèi)容,然后 document.execCommand('Copy') 來執(zhí)行復(fù)制的操作。let $copyPlaceholder = $('<input class="copy-placeholder" type="text" />');$('body').append($copyPlaceholder);function copyText(text) { $copyPlaceholder.val(text); $copyPlaceholder[0].select(); document.execCommand('Copy'); $copyPlaceholder.val(''); $copyPlaceholder[0].blur(); UI.alertSecond('Copied.');}這一套在 PC 上是沒問題的,但是實(shí)測(cè)蘋果和安卓上的各種瀏覽器都不支持 document.execCommand,都會(huì)返回 false,并且不產(chǎn)生復(fù)制的操作。然后引用了 clipboard.js,手機(jī)上也能正常操作了。然而問題來了,我看了半天源碼沒找到里面的 JS 是怎樣和剪貼板交互的,難道除了 document.execCommand() 還有別的路子?麻煩大家用過這個(gè)庫的解讀一下,非常感謝
clipboard.js 是如何控制設(shè)備的剪切板的?
慕的地6264312
2018-10-17 17:14:35