clipboard.js無需Flash無需依賴任何JS庫實現(xiàn)文本復(fù)制與剪切
我們在網(wǎng)頁上放置一個復(fù)制按鈕,主要用來方便用戶復(fù)制鏈接之類的復(fù)雜文本,以往的做法是,通過JS依靠Flash,甚至借助jQuery龐大的js庫來實現(xiàn)文本復(fù)制到剪貼板的。今天我要給大家介紹的是一款極現(xiàn)代的,不需要flash,不依賴任何其他js庫的非常小的插件,它叫clipboard.js。
運行效果圖:
HTML
首先加載本地clipboard.js文件。
<script src="clipboard.min.js"></script>
然后就是在body中加上要復(fù)制或剪切的文本域內(nèi)容以及按鈕。
<input id="foo" value="http://chabaoo.cn/article/73145.htm"> <button class="btn" data-clipboard-target="#foo" aria-label="復(fù)制成功!">復(fù)制</button>
這里,我們使用了HTML5的data-屬性,用來定位復(fù)制對象目標(biāo),它指向了文本域#foo,說明復(fù)制的是#foo中的value內(nèi)容,aria-label屬性定義了復(fù)制成功后的信息,用來提示復(fù)制結(jié)果信息。
還有個屬性data-clipboard-action,它定義當(dāng)前操作是復(fù)制還是剪切,默認(rèn)是復(fù)制,當(dāng)data-clipboard-action="cut",這時,點擊按鈕將會剪切文本,跟WORD操作一樣。當(dāng)然,剪切操作僅適用于text和textarea。
我們也可以不需要input和textarea等元素內(nèi)容作為復(fù)制對象,我們可以將要復(fù)制的內(nèi)容通過ata-clipboard-text屬性定義在按鈕上,點擊按鈕就可以復(fù)制到ata-clipboard-text對應(yīng)的內(nèi)容。
<button class="btn" data-clipboard-text="這里是要復(fù)制的內(nèi)容" aria-label="復(fù)制成功!">復(fù)制</button>
Javascript
將以下一句代碼加入到</body>前的<script>里,保存打開瀏覽,點擊按鈕即可復(fù)制。
new Clipboard('.btn');
當(dāng)然我們可以再進(jìn)一步處理,比如當(dāng)復(fù)制完成后,提示復(fù)制成功信息更友好些,只要執(zhí)行以下代碼即可:
var clipboard = new Clipboard('.btn'); clipboard.on('success', function(e) { var msg = e.trigger.getAttribute('aria-label'); alert(msg); e.clearSelection(); });
以上就是,不需要flash,不依賴任何其他js庫實現(xiàn)文本復(fù)制與剪切實現(xiàn)過程,希望對大家的學(xué)習(xí)有所幫助。
相關(guān)文章
javascript實現(xiàn)在網(wǎng)頁中運行本地程序的方法
這篇文章主要介紹了javascript實現(xiàn)在網(wǎng)頁中運行本地程序的方法,實例分析了JavaScript基于ActiveXObject運行本地程序的技巧,需要的朋友可以參考下2016-02-02JS在一定時間內(nèi)跳轉(zhuǎn)頁面及各種刷新頁面的實現(xiàn)方法
這篇文章主要介紹了JS在一定時間內(nèi)跳轉(zhuǎn)頁面及各種刷新頁面的實現(xiàn)方法的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-05-05完美實現(xiàn)js拖拽效果 return false用法詳解
這篇文章主要為大家詳細(xì)介紹了完美實現(xiàn)js拖拽效果的代碼,一起學(xué)習(xí)return false的用法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07舉例講解JavaScript substring()的使用方法
這篇文章主要通過舉例的方法講解了javaScript substring()的用法,substring() 方法用于提取字符串中介于兩個指定下標(biāo)之間的字符,感興趣的小伙伴們可以參考一下2015-11-11innerHTML,outerHTML,innerText,outerText的用法及區(qū)別解析
本篇主要是對innerHTML,outerHTML,innerText,outerText的用法及區(qū)別進(jìn)行了詳細(xì)的介紹,需要的朋友可以過來參考下,希望對大家有所幫助2013-12-12