将文本区域文本复制到剪贴板 html / javascript
嘿,我知道那里有很多教程,但似乎没有一个适合我。
我有这个:
<textarea name="forum_link" type="text" style="width:630px; height:90px;">
[URL=http://www.site.net/video/<?=$_GET['id']?>/<?=$_GET['tag']?>]<?=$video->title?>[/URL]
[URL=http://www.site.net/video/<?=$_GET['id']?>/<?=$_GET['tag']?>][IMG]<?=$video->thumbnailURL?>[/IMG][/URL]
</textarea>
现在我想要的只是一个简单的按钮,单击该按钮时会将文本区域中的文本复制到用户剪贴板。
任何帮助都会很棒:)
谢谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(7)
遗憾的是,对此没有一劳永逸的解决方案。 IE 以外的浏览器不允许复制到剪贴板。我最近发现了一个很好的解决方案,它使用 Flash(适用于除 IE 之外的所有浏览器)和适用于 IE 的 JavaScript 将文本复制到剪贴板。有关详细信息,请参阅 zeroclipboard。
Sadly there's no all in one solution for this. Browsers other than IE doesnt allow copying to clipboard. I found I nice solution recently which uses Flash (for all browsers but IE) and JavaScript for IE to copy text to the clipboard. See zeroclipboard for details.
查看此页面。它没有说明任何有关浏览器兼容性的信息,但可能值得一看!它提供了一个 javascript 复制到剪贴板的示例,以及与其关联的 HTML。
http://www.geekpedia.com/tutorial126_Clipboard-使用 JavaScript 剪切复制粘贴.html
Check out this page. It doesn't say anything about browser compatibility, but could be worth checking out! It gives a javascript copy to clipboard example, and the HTML associated with it.
http://www.geekpedia.com/tutorial126_Clipboard-cut-copy-and-paste-with-JavaScript.html
该解决方案纯粹基于 Javascript。我不知道它与其他浏览器的兼容性。对于 chrome 的工作,我添加了代码片段。
请参阅此 Jsfiddle 了解更多详细信息。
The solution is purely on Javascript. i don't know about its compatibility with other browsers. For chrome its working, I am adding the code snippet.
Please see this Jsfiddle for more detail.
现代解决方案
document.execCommand('copy')
现在是 已弃用相反,我们现在有 Clipboard API
您可以使用
writeText()
属性来完成此操作:或者只是简单地:
奖励:这适用于禁用的文本区域,并且跨浏览器兼容
Modern Solution
document.execCommand('copy')
is now deprecatedInstead, we now have the Clipboard API
You can use the
writeText()
property to accomplish this:or just simply:
Bonus: This works with disabled textareas and is cross-browser compatible
使用任何脚本的浏览器兼容性充其量都是劣质的。 JavaScript 故意不允许操作系统具有这种级别的功能。可以创建一个签名脚本,您会拥有更好的运气,但是......这需要更多的工作,而且几乎不值得。大多数人都知道如何复制和粘贴...
Browser compatibility using any script is shoddy at best. JavaScript intentionally doesn't natively allow this level of functionality with the operating system. It is possible to create a signed script that you'll have better luck with, but... that's a lot more work and hardly worth it. Most people know how to copy and paste...
不幸的是 javascript 没有通用的方法。目前,使用闪光灯和javascript最通用的方式。
查看 LMCButton - 一个用于“复制到剪贴板”的小型动画 Flash 按钮 (4 kb)。
使用 javascript 的示例:
获取按钮的 html 代码:function lmc_get_button(cliptext, idLMC)
更新按钮中的文本:function lmc_set_text(idLMC, text)
Unfortunately javascript does not have a universal way. Currently, the use of flash & javascript most universal way.
Look on a LMCButton - a small animated flash button (4 kb) for "Copy to clipboard".
Example of using javascript:
Get html code of the button: function lmc_get_button(cliptext, idLMC)
Update text in the button: function lmc_set_text(idLMC, text)