在JavaScript或jQuery中复制和粘贴剪贴板

5
我该如何复制 div 标签中的内容并粘贴到像 Paint、Powerpoint 等应用程序中?

看一下这个问题:https://dev59.com/UHI_5IYBdhLWcg3wEOzq - jorgebg
你应该澄清你的问题。你是想要复制粘贴什么吗?需要按下CTRL+C和CTRL+V键吗? - Mauro
1
可能是重复的问题:Jquery - 将div内容复制到剪贴板 - Gert Grenander
从您后来的评论中看来,您想要将其复制为图像,这在问题中应该表述得更清楚。 - Luke H
这似乎是你正在寻找的内容:https://dev59.com/gVXTa4cB1Zd3GeqP0U0j - Luke H
2个回答

3

虽然不容易,但是有可能:

function copyToClipboard(meintext) {  
if (window.clipboardData)   
     window.clipboardData.setData("Text", meintext);  
else if (window.netscape) {  
     netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');  
     var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);  
     if (!clip)  
          return false;  
     var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);  
     if (!trans)  
          return false;  
     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);  
     str.data=meintext;  
     trans.setTransferData("text/unicode",str,meintext.length*2);  
     var clipid=Components.interfaces.nsIClipboard;  
     if (!clipid)  
          return false;  
     clip.setData(trans,null,clipid.kGlobalClipboard);  
}  
     return false;  
}

请注意。前两行适用于IE。
所有以下内容适用于Firefox。 并且对于Firefox,必须启用剪贴板:
打开 about:configsigned.applets.codebase_principal_support 设置为true
或者只需使用一些Flash内容 :)

谢谢,但我需要内容被复制为图像而不是文本。 - rahul

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接