如何在 Firefox Scratchpad 中使用 jQuery?

How can I use jQuery in the Firefox Scratchpad?

如何在 Firefox Scratchpad 中使用 jQuery?
我有 Firefox v54.0.1.

我用谷歌搜索了一下,发现一些文章提到了 Firefox Scratchpad 如何 jQuery 内置,但这些文章是在 Scratchpad 首次发布时写回的。

http://www.davidhayden.me/blog/jquery-and-javascript-development-using-firefox-scratchpad

https://hacks.mozilla.org/2013/11/reintroducing-the-firefox-developer-tools-part-2-the-scratchpad-and-the-style-editor/

我最初只是尝试了 jQuery 代码,当它不起作用时,我投入了 CDN。我很绝望..

如有任何建议,我们将不胜感激!
谢谢!

编辑:(添加了 Dave 的建议)

您应该能够通过在暂存器的开头添加此代码来注入脚本元素。此外,您需要等待它加载,您需要 运行 回调中的代码

let jq = document.createElement("script");
jq.src = "https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js";
jq.onload = function() {
  //your code here
};
document.body.appendChild(jq);

这里有一个更通用的方法来加载任何脚本(或者可能只是支持 AMD 的脚本),如果你愿意的话也可以使用 almond.js (you can replace it with require.js

将此脚本放在暂存器片段的开头。此代码段加载 almond.js 脚本加载器。

var _ = function (run) {
  var script = document.createElement("script") 
  // replace this url to load any other script loaders...
  script.src = 'https://gitcdn.link/repo/requirejs/almond/master/almond.js';
  // then run the code once require is available
  script.onload = function () {
    run(requirejs)
  }
  script.onerror = function () {
    // uncaught!
    throw new Error('error loading almond!')
  }
  document.body.appendChild(script)
}

现在,您可以像这样包装您的暂存器代码

_(function(require){
    // here you may configure requirejs to load external scripts
    // see: https://requirejs.org/docs/api.html#config
    // For e.g. to load jQuery you can do something like this
    require.config({
      path: {
        'jquery': 'https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js'
      }
    })

    // then trigger require js
    require(['jquery'], function($){
      // your code follows here...!
    })
})