从当前页面之外的系统剪贴板获取最后的“文本”数据
Get last 'Text' Data from system clipboard outside current page
到目前为止,所有的答案都集中在捕捉网页内的事件上。但是,是否可以使用javascript检索剪贴板中的最后一个"文本"数据?
我想做的是,当用户单击文本区域时,它会自动将其值更改为系统剪贴板(从任何页面或其他应用程序)中最后复制的元素。
可悲的是,没有简单的方法可以做到这一点。您可以使用 Flash hacks(我个人不认识他们)随时访问剪贴板,但除此之外,您只能在系统剪贴板事件期间访问用户的剪贴板(在您的情况下,阅读剪贴板上的内容)(由键盘快捷键或从浏览器的菜单触发)。
在 IE 中,您可以随时使用以下代码访问剪贴板:
window.clipboardData.getData('Text');
但是,如果不是在系统剪贴板事件期间,系统将提示用户是否要授予你访问权限。
您可以在 Chrome 中使用可授予您的网站/应用剪贴板权限的 chrome 扩展程序来获取解决方法。从那里,您可以使用以下代码强制粘贴事件。
window.execCommand('paste');
这应该会导致粘贴剪贴板上的任何内容(由于选择了文本区域,因此它应该粘贴到文本区域中)。
不过,这可能是你能得到的,除非你想出一种方法让Flash为你做这件事(ZeroClipboard似乎是一个有前途的选择)。
如果你对更多细节感兴趣,我在Lucidchart(我工作的地方)做了大量的工作后,写了一篇关于这个主题的技术博客文章。
相关文章:
- 无法读取未定义的属性“最后”的未定义
- Javascript:如何在不使用getElementById的情况下更改子元素的获取和更改属性
- 禁用指针事件后,1个最后的mouseout触发
- 无法使用“确认框”中的获取新行
- Ace编辑器通过垂直滚动条隐藏最后的相扑
- 如何仅从循环中调用最后的承诺
- CORS从Firefox到Beego服务器的获取在预飞行后停止
- <选择>的获取值显示为未定义.(棱角.js)
- 使用VersionOne api,当由javascript / html实现时,如何实现故事名称的获取?query.v1
- 从当前页面之外的系统剪贴板获取最后的“文本”数据
- 隐藏 url 中的获取变量
- 在最后的段落中拆分内容
- 正则表达式以获得最后的重复
- 单击CK编辑器工具栏上的获取UI按钮
- 循环只插入最后的值
- NodeJs,500无法在进程中的获取访问令牌(错误:connect ECONNREFUSED)_tickCallbac
- 如何从另一个网站上的文本文件的最后一行获取数据
- 处理react redux中的获取错误的最佳方法是什么
- 选择2-Ajax搜索-记住最后的结果
- ng重复最后的回调事件