mui 點(diǎn)擊長按復(fù)制文本

項(xiàng)目需要長按復(fù)制文本內(nèi)容,由于也沒仔細(xì)研究過 mui 所以就直接百度。
看到了 花落亂了流年 這篇博客 我就把這個(gè)博客的代碼融合到自己的項(xiàng)目里,實(shí)現(xiàn)了復(fù)制的需求。

直接上代碼

單獨(dú)寫到了一個(gè) js 文件。首先把 長按事件 激活,因?yàn)槟J(rèn)是關(guān)閉的。我在里邊添加了確認(rèn)框,可以做到提醒用戶的作用。在復(fù)制成功后邊又有消息提醒。代碼如下

// 激活長按按鈕
mui.init({
    gestureConfig: {
        longtap: true, //默認(rèn)為false
    }
});

// 使用mui的長按事件 我把我的復(fù)制元素 class 設(shè)置為copy-text
mui('body').on('longtap', '.copy-text', function () {
    // 每次觸發(fā)事件就會使用 innerText 獲取純文本。
    var copy_content = this.innerText;
    // 加了一個(gè)確認(rèn)框 讓用戶選擇是否復(fù)制
    mui.confirm('您要復(fù)制內(nèi)容嗎?', '小禾CRM', ['取消', '復(fù)制內(nèi)容'], function (e) {
        if (e.index == 1) {
            //判斷是安卓還是ios
            if (mui.os.ios) {
                // ios 的方法 這個(gè)我沒具體研究過 直接拿來用了
                var UIPasteboard = plus.ios.importClass("UIPasteboard");
                var generalPasteboard = UIPasteboard.generalPasteboard();
                //設(shè)置 復(fù)制的內(nèi)容也就是 觸發(fā)事件 innerText 獲取的內(nèi)容
                generalPasteboard.plusCallMethod({
                    setValue: copy_content,
                    forPasteboardType: "public.utf8-plain-text"
                });
                generalPasteboard.plusCallMethod({
                    valueForPasteboardType: "public.utf8-plain-text"
                });
                // 在上邊都走完 給用戶一個(gè)提示
                mui.toast('復(fù)制成功')
            } else {
                //安卓 的方法 這個(gè)我沒具體研究過 直接拿來用了
                var context = plus.android.importClass("android.content.Context");
                var main = plus.android.runtimeMainActivity();
                var clip = main.getSystemService(context.CLIPBOARD_SERVICE);
                plus.android.invoke(clip, "setText", copy_content);
                 // 在上邊都走完 給用戶一個(gè)提示
                mui.toast('復(fù)制成功')
            }
        }
    })
})
我參考了QQ空間復(fù)制、網(wǎng)易云音樂評論復(fù)制。發(fā)現(xiàn)都是直接復(fù)制全部文本,并不是選擇的,所以這樣子完全符合現(xiàn)在主流需求。

使用起來也很簡單 在需要用到復(fù)制的頁面 引入上邊的js文件,在把需要復(fù)制的元素上添加class。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 深圳的立秋依然是夏天! 我們的燦然日子也是夏天,總是不知道為什么,看著你就笑了! 這個(gè)夏天近響午,暖風(fēng)拉開窗簾,把...
    一直被傳說的閱讀 538評論 0 1
  • 解釋:AIO → Asynchronous input output(異步非阻塞式的輸入和輸出)NIO(2.0)版...
    真海ice閱讀 946評論 0 0
  • 1 我不是球迷,平時(shí)也不會熬夜看球,所以不是梅吹。 但我對梅西的愛,與是不是球迷無關(guān)緊要。我愛他對足球的那份炙熱,...
    安梳顏閱讀 2,866評論 25 94
  • 我有時(shí)會看到一個(gè)小孩子…… 一個(gè)隨時(shí)可能被媽媽拋棄嫌棄的小孩子,一個(gè)沒有安全感的小孩子,一個(gè)自卑敏感的小孩子; T...
    日月星光里閱讀 408評論 0 2
  • 一直覺得照顧小動(dòng)物不僅需要愛心還需要強(qiáng)大的責(zé)任心。雖然朋友說,魚是一種沒有感情的動(dòng)物,它的記憶只有七秒,但是當(dāng)我耐...
    張玉晶閱讀 389評論 8 7

友情鏈接更多精彩內(nèi)容