我如何让jQuery使用Greasemonkey 0.8脚本(在Firefox 2上),在没有互联网的情况下使用PC

How do I get jQuery to work with a Greasemonkey 0.8 script (On Firefox 2), with no internet to the PC?

本文关键字:互联网 PC 情况下 Firefox jQuery 使用 Greasemonkey 8脚本      更新时间:2023-09-26

我使用的是Firefox 2.0.0.11Greasemonkey0.8.x以及最新的jQuery版本(1.3.2),该版本适用于Greasemonkey 0.8。
我尝试加载这个用户脚本:

// ==UserScript==
// @name        TEST
// @include     *
// @require     jquery.min.js
// @grant       GM_getValue
// ==/UserScript==
$(document).ready(function(){
    alert('jQuery!');
});     

但我收到错误:

Error: $ is not defined
Source File: file:///G:/Firefox/Data/profile/gm_scripts/huhu/huhu.user.js
Line: 8

我知道我必须更新这个旧浏览器。但这是不可能的。我必须处理它!

我想在没有互联网连接的本地电脑上加载jQuery代码。我已经在用户脚本所在的同一文件夹中复制了jquery.min.js。

G:/Firefox/Data/profile/gm_scripts/huhu/jquery.min.js

你知道问题出在哪里吗?

此致,Bernte

有两种方法可以从本地驱动器安装Greasemonkey脚本,这样jQuery就可以工作了
但是,首先,以下是。。。

两种方法通用的先决条件:

  1. 旧版本的Greasemonkey(和Firefox)很容易混淆。因此,使用Greasemonkey的脚本管理器卸载任何旧版本的脚本。

  2. 转到配置文件文件夹中的gm_scripts文件夹,如果存在脚本的文件夹,请将其物理删除。

  3. 确保脚本源代码位于扩展名为user.js的文件中。例如:Hello World.user.js

  4. 请确保脚本源代码位于文件夹中,而不是系统TMPtemp文件夹中。例如,将源文件放置在C:'My GM scripts'中。

  5. 同样,这不是,也不要使用Firefox配置文件文件夹树中的任何文件夹。

  6. 如果有疑问,或者事情看起来"不稳定",请重新启动Firefox。


方法1,计算机可以上网:

  1. 只需将@require指向谷歌的正确jQuery版本。对于GM 0.8,应不晚于jQuery 1.3.2。

    // ==UserScript==
    // @name     Hiya Ma
    // @include  http://stackoverflow.com/*
    // @require  http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js
    // ==/UserScript==
    $("body").prepend ('<div>Hello world!</div>');
    


  2. 使用Firefox的打开文件菜单(CtrlO)打开源文件。(例如:C:'My GM scripts'Hello World.user.js

    或:
    将源文件拖放到任何打开的Firefox选项卡。

  3. Greasemonkey将提示安装脚本。按照提示操作。


方法2,计算机无法访问web:

  1. 下载适当的jQuery版本(在本例中为1.3.2),并将其保存为jquery.min.js,保存在与脚本源(在本示例中为C:'My GM scripts')相同的文件夹中。

  2. 不要在@require指令中使用任何路径:

    // ==UserScript==
    // @name     Hiya Ma
    // @include  http://stackoverflow.com/*
    // @require  jquery.min.js
    // ==/UserScript==
    $("body").prepend ('<div>Hello world!</div>');
    


  3. 按照方法1的步骤2和3安装脚本。您不需要打开或拖动jQuery文件。


另请注意:

  1. G:/Firefox/Data/profile/gm_scripts/huhu/jquery.min.js看起来像一个Firefox配置文件目录。您没有在此处放置任何文件。Greasemonkey将根据需要复制和重命名文件。

  2. 在Greasemonkey版本1.0之前不支持@grant。不要在这里使用它。

  3. 这里不需要$(document).ready(),在大多数GM脚本中也不需要。Greasemonkey默认在正确的时间开火。

  4. 这些方法已针对Firefox 2.0.0.20和Greasemonkey 0.8.20100408.6进行了验证,但在GM 1.0之前,它们几乎适用于所有版本的FF+GM。


如果出现"NS_ERROR_FILE_ACCESS_DENIED"错误,该怎么办:

这个错误在旧版本的Greasemonkey中并不罕见。最常见的两个原因是temp文件管理不善(由FF/GM管理)和Firefox配置文件损坏。

在大多数情况下,请执行以下操作进行补救:

  1. 重复上面列出的先决条件。

  2. 清除系统临时文件夹中类似于脚本源文件、任何@required文件或任何@resourced文件的任何内容。

    在本例中,请特别查找hiya_ma.user.jsjquerymin.js

    在Windows中,临时文件夹的地址为:%TMP%%TEMP%

  3. gm_scripts文件夹中,确保config.xml没有引用已删除或丢失的脚本。如果没有(其他)脚本,请删除config.xml

  4. 如果所有其他操作都失败了,请使用Firefox的配置文件管理器创建一个新的配置文件并在那里重新安装脚本。