gpt4 book ai didi

javascript - 如何使用 Greasemonkey 将数据复制到剪贴板?

转载 作者:可可西里 更新时间:2023-11-01 02:18:13 25 4
gpt4 key购买 nike

我找到了 this question但尝试使用那里给出的代码:

unsafeWindow.netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
const clipboardHelper = Components.classes["@mozilla.org/widget/clipboardhelper;1"]
.getService(Components.interfaces.nsIClipboardHelper)
;
clipboardHelper.copyString('test');


给出错误信息:

A script from «http://example.com» was denied UniversalXPConnect privileges.



我也尝试使用(from Mozilla site):

const gClipboardHelper = Components.classes["@mozilla.org/widget/clipboardhelper;1"]
.getService(Components.interfaces.nsIClipboardHelper)
;
gClipboardHelper.copyString("test2");

给出错误信息:Components.classes is undefined

在这两种情况下,它都不适用于 Windows 7 上的最新 Firefox。
我还应该尝试什么?

最佳答案

更新:

从 1.10 版(2013 年 6 月 20 日)开始,Greasemonkey 现在支持 the GM_setClipboard() function .
像这样使用:

// ==UserScript==
// @name _YOUR_SCRIPT_NAME
// @include http://YOUR_SERVER.COM/YOUR_PATH/*
// @grant GM_setClipboard
// ==/UserScript==

GM_setClipboard ("The clipboard now contains this sentence.");


旧的 GM 版本:

Greasemonkey 很难做到这一点,因为 GM 开发者拒绝支持它,并且必须克服 FF 和 Flash 安全设置。
如果复制将通过手动点击 启动,您可以这样做。在这种情况下,使用来自 this question 的技术之一。 .

如果您希望拥有某种全自动剪贴板操作,那么您将必须为您的 GM 脚本开发自己的附加组件或插件。


Scriptish 多年来一直支持这一点:

如果您愿意切换脚本附加组件,请注意 Scriptish提供 GM_setClipboard() to set the clipboard . (但是没有阅读功能?!)

Scriptish 并不完美,但它在某些方面优于 Greasemonkey。 (请注意,我不隶属于任何一个附加组件,也不完全满意。)

大多数 GM 脚本都可以毫无问题地在 Scriptish 中运行。


至于代码片段,来自问题;它们本质上是同一件事(第一个只是说明 GM 沙箱)。对于许多版本的 Firefox 来说,这种方法已经过时,而且替换代码的文档也很少。
您将不得不使用需要用户交互的技术,或者您将不得不编写自定义帮助程序插件。

关于javascript - 如何使用 Greasemonkey 将数据复制到剪贴板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13075645/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com