Javascript GM_setClipboard(和其他GM函数)在Firefox中给出错误,但在Chrome/Tampermonkey中没有?

Javascript GM_setClipboard(和其他GM函数)在Firefox中给出错误,但在Chrome/Tampermonkey中没有?,javascript,jquery,greasemonkey,tampermonkey,Javascript,Jquery,Greasemonkey,Tampermonkey,我在Firefox中工作,试图创建一个函数,当我按下Shift+*(Numpad)时,它会复制链接的文本 该代码通常在Chrome Tampermonkey中工作,但由于某些原因,它在Firefox中没有任何作用。 控制台中报告了以下错误: “引用错误:未定义GM_setClipboard” 这是我的代码: document.addEventListener( "keydown", function(i) { var selectLink = $('a').eq(8); // The l

我在Firefox中工作,试图创建一个函数,当我按下Shift+*(Numpad)时,它会复制链接的文本

该代码通常在Chrome Tampermonkey中工作,但由于某些原因,它在Firefox中没有任何作用。
控制台中报告了以下错误:

“引用错误:未定义GM_setClipboard”

这是我的代码:

document.addEventListener( "keydown", function(i) {
    var selectLink = $('a').eq(8); // The link by index
    var targetLink = selectLink.text(); // The link text

    if (i.keyCode === 106 && i.shiftKey) // Shift+Num*
    {
        GM_setClipboard(targetLink); // Copy to clipboard
    }
});
使用
GM
功能。然而,Tampermonkey仍然会进行一些自动检测(潜在的安全漏洞)

因此:

  • 您需要在中指定
    /@grant GM_setClipboard

  • 但是,这会重新打开沙箱(这是一件好事),因此您还需要确保您已经使用了
    @require
    djquery

  • 此脚本将在Greasemonkey和Tampermonkey中工作:

    // ==UserScript==
    // @name     _YOUR_SCRIPT_NAME
    // @match    http://YOUR_SERVER.COM/YOUR_PATH/*
    // @require  http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js
    // @grant    GM.setClipboard
    // ==/UserScript==
    
    document.addEventListener ( "keydown", function (i) {
        var selectLink = $('a').eq (8); // The link by index
        var targetLink = selectLink.text ().trim (); // The link text
    
        if (i.keyCode === 106  &&  i.shiftKey) // Shift+Num*
        {
            GM.setClipboard (targetLink); // Copy to clipboard
        }
    } );
    
    这是个不错的选择

    一个非常常见的用例是从另一个元素复制内容。可以通过在触发器元素中添加数据剪贴板目标属性来实现这一点


    是否有任何错误信息或类似信息?实际和预期的行为是什么?是的,对不起,我刚刚在控制台中找到了如何从Greasemonkey检索错误消息,错误是“ReferenceError:GM_setClipboard未定义”。预期的行为是,当我按下Shift+*时,它将复制所选链接的文本。它的
    GM.setClipboard
    现在(
    不是
    )<代码>@grant仍然是必需的,并且必须更正。在Firefox 68.3(自2019年12月起)中使用油脂猴4.9进行测试。