欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

用JavaScript实现复制到剪贴板的多种方法

最编程 2024-02-15 08:00:02
...


​function​​​ ​​copyToClipboard(txt) {​

​if​​​ ​​(window.clipboardData) {​

​window.clipboardData.clearData();​

​clipboardData.setData(​​​​"Text"​​​​, txt);​

​alert(​​​​"复制成功!"​​​​);​


​} ​​​​else​​​ ​​if​​​ ​​(navigator.userAgent.indexOf(​​​​"Opera"​​​​) != -1) {​

​window.location = txt;​

​} ​​​​else​​​ ​​if​​​ ​​(window.netscape) {​

​try​​​ ​​{​

​netscape.security.PrivilegeManager.enablePrivilege(​​​​"UniversalXPConnect"​​​​);​

​} ​​​​catch​​​ ​​(e) {​

​alert(​​​​"被浏览器拒绝!\n请在浏览器地址栏输入'about:config'并回车\n然后将 'signed.applets.codebase_principal_support'设置为'true'"​​​​);​

​}​

​var​​​ ​​clip = Components.classes[​​​​'@mozilla.org/widget/clipboard;1'​​​​].createInstance(Components.interfaces.nsIClipboard);​

​if​​​ ​​(!clip)​

​return​​​​;​

​var​​​ ​​trans = Components.classes[​​​​'@mozilla.org/widget/transferable;1'​​​​].createInstance(Components.interfaces.nsITransferable);​

​if​​​ ​​(!trans)​

​return​​​​;​

​trans.addDataFlavor(​​​​"text/unicode"​​​​);​

​var​​​ ​​str = ​​​​new​​​ ​​Object();​

​var​​​ ​​len = ​​​​new​​​ ​​Object();​

​var​​​ ​​str = Components.classes[​​​​"@mozilla.org/supports-string;1"​​​​].createInstance(Components.interfaces.nsISupportsString);​

​var​​​ ​​copytext = txt;​

​str.data = copytext;​

​trans.setTransferData(​​​​"text/unicode"​​​​, str, copytext.length * 2);​

​var​​​ ​​clipid = Components.interfaces.nsIClipboard;​

​if​​​ ​​(!clip)​

​return​​​ ​​false​​​​;​

​clip.setData(trans, ​​​​null​​​​, clipid.kGlobalClipboard);​

​alert(​​​​"复制成功!"​​​​);​

​}​

​}​