Dar*_*nov 7 javascript google-chrome-extension tampermonkey
我想为网站创建一个非常小的扩展,它会自动将一些值复制到剪贴板。
问题是我希望它复制该值,即使浏览器没有聚焦,例如:
我尝试使用剪贴板 API:
navigator.clipboard.writeText(...)
但我认为它不会起作用,因为浏览器必须集中注意力(我认为)。
当页面聚焦时,复制工作正常。如果我尝试切换到不同的应用程序,当我的扩展尝试复制该值时,我会收到异常:
DOMException: Document is not focused.
有什么办法可以做到这一点吗?
出于安全原因这是不可能的。很难想象有人想要这种行为......
在 Chrome 中,您可以clipboard-write在用户生成的小事件之外请求写入剪贴板的权限,尽管 Chrome 似乎不会限制您何时可以写入剪贴板。根据下面的文章,您可以写入剪贴板在 Chrome 中从后台等等。请参阅本节底部的注释以获取更多信息。
如果 Chrome 允许您从后台写入剪贴板或者未选择窗口,则您可以使用页面可见性 API在“该”特定窗口不可见时启动复制事件。
您甚至可以使用window.addEventListener('blur', function(){...})处理程序来测试等......
总而言之,这在 Chrome 中可能是可能的,但在 Firefox 中绝对不支持。
您可以在此处查看浏览器之间的差异以及它们如何处理剪贴板相关事件/权限/等。
| 归档时间: | 
 | 
| 查看次数: | 12942 次 | 
| 最近记录: |