用js實現復制內容到操作系統粘貼板(兼容IE、谷歌、火狐等瀏覽器)


一、如果只考慮IE瀏覽器,可以直接用原聲js實現

if(window.clipboardData){
    //清空操作系統粘貼板
    window.clipboardData.clearData();
    //將需要復制的內容復制到操作系統粘貼板    
    window.clipboardData.setData("Text", "要復制的內容");
}

 

二、如果是其他瀏覽器,上面的辦法行不通,其他瀏覽器出於安全的考慮禁止js訪問操作系統粘貼板。

這里需要用到插件,網上流行的插件有兩種,一種是ZeroClipboard.js,一種是clipboard.js。

插件下載地址:https://zenorocha.github.io

1.用ZeroClipboard.js插件需要用到以下三個文件:

ZeroClipboard.js

ZeroClipboard.min.js

ZeroClipboard.swf

這個插件需要瀏覽器的flash控件支持,復制時先把內容復制到flash里面,再利用flash將內容復制到

操作系統。flash控件又被淘汰的可能,有些瀏覽器上兼容得也不太好,所以這個插件不太好用。

2.用clipboard.js插件需要用到以下一個文件:

clipboard.min.js

執行復制功能的html標簽上需要加上一個屬性和一個樣式,屬性data-clipboard-text的值表示要復制的內容,

樣式js-copy表示該標簽被綁定上點擊復制的功能,在點擊該標簽時觸發復制功能。

該插件兼容IE、谷歌、火狐等瀏覽器。

js示例代碼如下:

$("span").each(function(index,element){if(element.innerHTML=="復制")new Clipboard($(element).parent().attr("data-clipboard-text",Ext.fly(html).dom.innerText).addClass("js-copy")[0]);});

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM