回答

收藏

如何在 JavaScript 中复制到剪贴板?

技术问答 技术问答 401 人阅读 | 0 人回复 | 2023-09-11

将文本复制到剪贴板(多浏览器)的最佳方法是什么?
" t* `- @, K6 I! ^我努力了:! @5 ?. g: l1 s5 ?+ `/ q% ]+ t
function copyToClipboard(text)    if (window.clipboardData) { // Internet Explorer        window.clipboardData.setData("Text",text);   else        unsafeWindow.netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");        const clipboardHelper = Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper);        clipboardHelper.copyString(text);   但在 Internet Explorer 中,它给出了语法错误。Firefox 中,它说unsafeWindow is not defined。
& }( b5 c% @# z5 U. {$ d) @                                                               
1 O; Q, C2 G% M# r+ `    解决方案:                                                                $ T- m7 Z8 X$ P6 @: s" G
                                                                自动复制到剪贴板可能很危险,所以大多数浏览器(Internet Explorer 除外)都让它很难。就个人而言,我使用以下简单的技巧:
& K0 H1 x# H8 b. I1 yfunction copyToClipboard(text) {  window.prompt("Copy to clipboard: Ctrl C,Enter",text);}将提示框呈现给用户,已选择复制文本。现在按下Ctrl C和Enter(关闭框)就够了——看!4 n7 U. k/ _4 k/ {  T/ w
由于用户手动(但以一种非常简单的方式),剪贴板的复制操作现在是安全的。当然,它适用于所有浏览器。7 g6 N. M6 \2 z# ?  f, d2 n- \& H
This is what I want to copy
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则