我正在尝试修改我为Grease Monkey编写的一段代码,使其与Tampermonkey兼容.尽管我的@require https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js,篡改猴子仍然说’$’没有定义.这个要求适用于Greasemonkey.
Tampermonkey instaled函数概述识别JQuery需要.
// ==UserScript==
// @name Function
// @version 1
// @run-at document-end
// @require https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js
// ==/UserScript==
var userIP;
$.ajax({
url: "https://api.ipify.org/?format=json", // Getting user Ip Address
async: false,
dataType: 'json',
success: function(data) {
userIP = data.ip; // Saving user Ip Address
}
});
解决方法:
既然你只是在编辑器中说这可能是Tampermonkey的语法检查,没有加载所需的脚本,并将它们作为代码检查过程的一部分.因此,它只是看到变量尚未在用户脚本本身的任何位置声明并显示警告.该脚本仍应按预期工作.
如果消息惹恼了您,您可以通过在脚本顶部明确声明$变量来清除它们,如下所示:
var $= window.jQuery;//OR
var $= window.$;