Created
October 31, 2013 07:48
-
-
Save kxxoling/7245718 to your computer and use it in GitHub Desktop.
JavaScript实现“复制到剪贴板”功能
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
copyToClipboard = function(txt) { | |
if(window.clipboardData) { | |
window.clipboardData.clearData(); | |
window.clipboardData.setData(”Text”, txt); | |
} else if(navigator.userAgent.indexOf(”Opera”) != -1) { | |
window.location = txt; | |
} else if (window.netscape) { | |
try { | |
netscape.security.PrivilegeManager.enablePrivilege(”UniversalXPConnect”); | |
} catch (e) { | |
alert(”您的firefox安全限制限制您进行剪贴板操作,请打开'about:config'将signed.applets.codebase_principal_support'设置为true'之后重试”); | |
return false; | |
} | |
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); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment