Javascript 当浏览器未聚焦时,从网站复制到剪贴板

Javascript 当浏览器未聚焦时,从网站复制到剪贴板,javascript,google-chrome-extension,tampermonkey,Javascript,Google Chrome Extension,Tampermonkey,我想为网站创建一个非常小的扩展,它会自动将一些值复制到剪贴板上 问题是,即使浏览器未聚焦,我也希望它复制该值,例如: 我打开网站,我的分机会监听页面上的更改 我打开不同的应用程序 如果页面上发生了变化,那么扩展应该复制一些值 我正在使用的主要应用程序仍然是重点,但我可以CTRL+V粘贴从网站复制的值,而无需alt+tab 我尝试使用剪贴板API: navigator.clipboard.writeText(...) 但我认为它不会起作用,因为浏览器必须专注(我认为) 当页面被聚焦时,复制就可以

我想为网站创建一个非常小的扩展,它会自动将一些值复制到剪贴板上

问题是,即使浏览器未聚焦,我也希望它复制该值,例如:

  • 我打开网站,我的分机会监听页面上的更改
  • 我打开不同的应用程序
  • 如果页面上发生了变化,那么扩展应该复制一些值
  • 我正在使用的主要应用程序仍然是重点,但我可以CTRL+V粘贴从网站复制的值,而无需alt+tab
  • 我尝试使用剪贴板API:

    navigator.clipboard.writeText(...)
    
    但我认为它不会起作用,因为浏览器必须专注(我认为)

    当页面被聚焦时,复制就可以了。如果我尝试切换到不同的应用程序,当我的扩展尝试复制该值时,会出现异常:

    DOMException: Document is not focused.
    

    有什么方法可以做到这一点吗?

    出于安全原因,这是不可能的。。很难想象有人想要这种行为

    在Chrome中,您可以请求
    clipboard write
    权限,以便在用户生成的小事件之外写入剪贴板,尽管这看起来不像Chrome限制您写入剪贴板的时间。。根据下面的文章,你可以在后台用Chrome写剪贴板,等等。。有关更多信息,请参阅

    如果Chrome允许您从后台写入剪贴板,或者如果未选择该窗口,则您可以在“该”特定窗口不可见时使用启动复制事件

    您甚至可以使用
    窗口。addEventListener('blur',function(){…})
    处理程序进行测试,等等

    总而言之,这在Chrome中是可能的,但在Firefox中肯定不受支持


    您可以查看浏览器之间的差异及其处理方式。

    出于安全原因,这是不可能的。。很难想象有人想要这种行为

    在Chrome中,您可以请求
    clipboard write
    权限,以便在用户生成的小事件之外写入剪贴板,尽管这看起来不像Chrome限制您写入剪贴板的时间。。根据下面的文章,你可以在后台用Chrome写剪贴板,等等。。有关更多信息,请参阅

    如果Chrome允许您从后台写入剪贴板,或者如果未选择该窗口,则您可以在“该”特定窗口不可见时使用启动复制事件

    您甚至可以使用
    窗口。addEventListener('blur',function(){…})
    处理程序进行测试,等等

    总而言之,这在Chrome中是可能的,但在Firefox中肯定不受支持


    您可以查看浏览器之间的差异及其处理方式。

    否,这是出于设计,因此恶意网站无法干扰用户的剪贴板,除非用户希望他们这样做。是否有办法绕过它?不同的浏览器、设置或类似的东西?不,这是经过设计的,因此恶意网站不会干扰用户的剪贴板,除非用户希望他们这样做。有没有办法绕过它?不同的浏览器、设置或类似的东西?