无法在 tampermonkey 中使用 jQuery

fro*_*sty 1 jquery tampermonkey

它一直说 $ 没有在 tamper-monkey 中定义,即使我已经 @require 了必要的链接。我究竟做错了什么?

// ==UserScript==
// @name         New Userscript
// @author       You
// @require https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js
// @include https://www.google.com/
// ==/UserScript==

$(document).ready(function(){
  console.log('ready');
});
Run Code Online (Sandbox Code Playgroud)

Cer*_*nce 5

您的广告拦截器似乎拦截了该https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js网址。关闭广告拦截器,或者选择不同的 jQuery 源。

修复后,您在用户脚本界面中看到的是linter 警告,而不是 Javascript 错误。如果您指定脚本运行的页面,脚本仍然可以正常运行。该警告是为了告诉您尚未显式定义变量$;它不知道你@require将定义什么$

为了让 linter 满意,告诉它这$是一个已经定义的全局变量:

...
// @include          https://example.com/
// ==/UserScript==

/* global $ */

$(document).ready(function(){
  console.log('ready');
});
Run Code Online (Sandbox Code Playgroud)