如何测试 Greasemonkey 脚本,尤其是在网页的本地副本上?

2024-01-10

我有自己的 javascript,需要用 Greasemonkey 进行测试。我以前从未与 Greasemonkey 合作过;我如何测试脚本?

我没有在万维网上测试它,我已经保存了目标页面(Firefox > 将页面另存为 > 网页,完成),所以我在本地测试它。

流程是怎样的?我如何测试脚本?


以下是一些针对 Greasemonkey 脚本进行故障排除的指南,包括一般情况和网页本地副本上的问题。

  1. 为了在本地页面上进行测试(没有本地网络服务器),您必须更改 Greasemonkey 的设置。
    Open 关于:配置 http://kb.mozillazine.org/About:config并设置greasemonkey.fileIsGreaseable to true

  2. 确保该网页的本地副本不在系统中/tmp or /temp文件夹。如果是的话,该脚本将无法可靠地工作。

  3. 确保脚本源不在系统中/tmp or /temp文件夹。如果是的话,该脚本将不会安装 http://wiki.greasespot.net/Troubleshooting_%28Script_Authors%29#Installing_from_.2Ftmp.

  4. 要使脚本能够处理本地文件,请确保您有合适的@include指示 http://wiki.greasespot.net/Metadata_Block#.40include针对本地网页复制。例如:

    // @include file:///D:/web/local%20page%20copies/*
    
  5. Familiarize yourself with Firefox's error console (CtrlShiftJ) and how it can be used to determine the source of errors in Greasemonkey scripts https://stackoverflow.com/a/9627507/331508.

  6. Install Firebug https://www.getfirebug.com/并熟悉它。Firebug优秀的控制台功能 http://getfirebug.com/wiki/index.php/Console_API在 GM 脚本中工作得很好——尽管你might必须在它们前面加上unsafeWindow..

  7. 尽可能多地测试 javascript,但不使用GM_函数 http://wiki.greasespot.net/Category:API_Reference,首先在 Firebug 的 JavaScript 控制台中。


也可以看看:

  • 脚本作者的故障排除 http://wiki.greasespot.net/Troubleshooting_%28Script_Authors%29
  • 避免 Greasemonkey 中的常见陷阱 http://wiki.greasespot.net/Avoid_Common_Pitfalls_in_Greasemonkey
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何测试 Greasemonkey 脚本,尤其是在网页的本地副本上? 的相关文章

  • 无法显示由 Fine-uploader 上传到 Amazon s3 的图像

    我现在尝试设置fineuploader s3以显示在aws服务器上成功上传的文件的图像 如示例页面上所做的那样 http fineuploader com s3 demo http fineuploader com s3 demo 我 仍然
  • 使用selenium IDE提取部分文本并将其放入变量中

    有人可以告诉我应该使用哪个命令来使用 Selenium Ide 从文本中仅提取数字 694575 并将其放入变量中以供进一步使用 这是带有文本的 div div class loginBoxTitle Edit Exhibition Cen
  • 我可以从 HTTP 请求中找到无线接入点的 BSSID(MAC 地址)吗?

    假设有人在咖啡店里无线连接到互联网 并向 johnsveryownserver com 发送 HTTP 请求 服务器端 有什么方法可以确定我的MAC地址吗 无线接入点他们连接到什么 请注意 我对他们机器的 MAC 地址不感兴趣 如果我无法使
  • 在 MongoDB 中查找具有字符串 ID 数组的文档

    我有一个 id 字符串数组 我想将其与 find 函数一起使用 db companies find id in arr arr看起来像这样 563a2c60b511b7ff2c61e938 563a2c60b511b7ff2c61e8b7
  • Ext JS - 如何滚动到文本区域的底部

    这是我下面的代码 如何滚动到文本区域的底部 它一定是类似的东西 Ext getCmp output setScrollPosition Ext getCmp output getScrollHeight 这是我的文本区域代码 var myW
  • 为什么 jQuery 点击事件会多次触发

    我这里有这个示例代码http jsfiddle net DBBUL 10 http jsfiddle net DBBUL 10 document ready function creategene click function confir
  • 如何通过 HTML 按钮播放声音

    我目前通过网站播放音乐的方法是通过 HTML 音频标签 不过我希望能够通过 HTML 按钮来播放它 该按钮应该能够在播放和停止之间切换音乐 我在 JSFiddle 创建了一个示例 但不知道如何实现它 有人可以告诉我如何使用我的 JSFidd
  • 将 Sweet Alert 弹出窗口添加到 React 组件中的按钮

    我为 Bootstrap 和 React 找到了这个完美的 Sweet Alert 模块 我在 Meteor 应用程序中使用它 http djorg83 github io react bootstrap sweetalert http d
  • 何时不使用承诺[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 在阅读了数十篇关于 es6 Promise 有多伟大以及为什么我们应该实现它们的文章之后 我有这样的感觉 ALL我的 不平凡的 JavaScri
  • Ember.JS - 如何在同一页面中使用多个模型、控制器和视图?

    我主要了解 Ember JS 的基础知识 大多数示例实际上只处理单个控制器和模型以在页面上显示某些内容 我真的很想用 Ember 构建一个完整的 Web 应用程序 所以有人能告诉我如何组织和连接多个控制器 模型和视图到一个页面中吗 例如 如
  • JavaScript 动画平滑滚动

    默认情况下 当您有这样的片段链接时 a href some url some fragment some text a 浏览器立即向下滚动到该片段 我该如何编程才能使用标准 JS 顺利地向下移动到该片段 这是一个例子 Example htt
  • v-file-input .click() 不是函数

    我试图以编程方式触发 v file input 的 click 事件 因为它在 Vuetify 的文档中 但它显示一个错误this refs imagePicker click is not a function我在这里错过了什么吗 代码重
  • 用数组反向查找对象

    假设我有一个这样的对象 resourceMap a 0 1 2 3 4 5 6 7 8 9 10 b 11 12 c 21 23 d 54 55 56 57 510 确定是否的最佳方法是什么resourceId 21将会 c 我们不知道钥匙
  • 访问 TypeScript 数组的最后一个元素

    TypeScript 中有访问数组最后一个元素的符号吗 在 Ruby 中我可以说 array 1 有类似的东西吗 您可以通过索引访问数组元素 数组中最后一个元素的索引将是数组的长度 1 因为索引是从零开始的 这应该有效 var items
  • 如何将 Browserify 与外部依赖项一起使用?

    我正在尝试慢慢地将 Browserify 引入我的网站 但我不想重写所有 js 也不希望 jquery 和其他库的重复实例与我的 Browserify 版本捆绑在一起 如果我构建将 jquery 列为外部依赖项的模块 那么如何将其指向我的全
  • 如何在网页上实现文件上传进度条?

    当用户将文件上传到我的网络应用程序时 我想显示比动画 gif 更有意义的内容 我还有哪些可能性 编辑 我正在使用 Net 但我不介意是否有人向我展示与平台无关的版本 如果您对这一切在客户端通常如何工作感兴趣 就是这样 所有解决方案都通过 J
  • WebRTC:通道、轨道和流与 RTP SSRC 和 RTP 会话之间的关系

    来自 Mozilla 网站 https developer mozilla org en US docs Web API Media Streams API https developer mozilla org en US docs We
  • 从多维无穷大数组中删除数组元素

    我想删除一个特定元素 例如 我想删除元素id 76在下面的数组中 而且 数组可以无限地组合在一起 这里的问题是我无法刷新页面 因为我使用 Vue js 进行即时操作 如果我能做到这一点 我的下一个问题可能是如何在我现在想要的地方添加一个元素
  • ES6 模板文字的延迟执行

    我正在玩新的ES6 模板文字 http tc39wiki calculist org es6 template strings 我首先想到的是String format对于 JavaScript 所以我开始实现一个原型 String pro
  • 替换两个引号之间的字符串

    我想转动一根绳子str hello my name is michael what s your s into hello my name is span class name michael span 我怎样才能在 JavaScript

随机推荐

  • DRF Viewset 删除详细路线的权限

    我有一个基本的视图集 class UsersViewSet viewsets ModelViewSet permission classes OnlyStaff queryset User objects all serializer cl
  • 如何根据 Rails 中输入的用户日期继续每周向用户发送电子邮件[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions Rails 上的新功能 目前使用 W
  • 从 STL std::queue 中删除而不破坏删除的对象?

    我在 STL 容器 队列和列表 上找到的所有文档都说 对于任何删除函数 都会调用删除对象的析构函数 这意味着我无法在任何时候使用 std queue 来使用一个队列 该队列只是需要对其执行某些操作的对象列表 我希望能够在对象排队等待我对它们
  • 如何让 Gradle 在 Java 测试之前编译 Groovy 测试

    Gradle 的 Groovy 插件声称它 supports joint compilation which allows to freely mix and match Groovy and Java code with dependen
  • 如何使用 java 将逗号 (,) 替换为点 (.)

    我有一个String str 12 12我想用 点 替换 逗号 以进行十进制数计算 目前我正在尝试这个 if str indexOf 1 str replaceAll 请帮忙 您的问题不在于匹配 替换 而是 String 是不可变的 您需要
  • 类型化的函数数组

    我正在努力弄清楚是否可以在 TypeScript 中声明静态类型的函数数组 例如 我可以这样做 foo data string gt void function data 但是 如果我希望 foo 成为一个接受字符串且不返回任何内容的函数数
  • D3 V4 中地图中的圆圈显示的位置不正确

    我正在使用教程来学习如何在 D3 v3 中生成地图 但我正在使用 D3 v4 我只是想让一些圆圈出现在地图上 见下文 该代码有效 只是圆圈位于内华达州上空并且应该位于湾区 我想这是地图投影和投影坐标之间的不匹配 我不确定地图所在的投影 但我
  • dplyr 用于行分位数

    我有一个 df 层 每个层都有 1000 个来自该层估计值的后验分布的样本 mydf lt as data frame lapply seq 1 1000 rnorm n 100 colnames mydf lt paste s seq 1
  • 将其他编辑器与 TortoiseHg 一起使用

    我正在尝试使用 TortoiseHG 的其他编辑器 而不是 Windows 记事本 我已经尝试过这里提到的解决方案 Mercurial 和 Notepad 集成 https stackoverflow com questions 92078
  • 我可以改进这个 JQuery 图像替换代码吗?

    HTML 看起来有点像 dl dt img src Something 1 dt dd Something 1 Text dd dl 此 HTML 重复 1 次或多次 因此同一页面上可能有许多 HTML 实例 我用来扩展 dd 并替换图像的
  • REST、HTTP DELETE 和参数

    向 HTTP DELETE 请求提供参数是否存在非 RESTful 的情况 我的场景是 我正在建模 您确定要删除它吗 设想 在某些情况下 资源的状态表明请求的删除可能无效 您可能可以自己想象一些需要确认删除的场景 我们采用的解决方案是向删除
  • 盐是否需要随机才能保护密码哈希?

    我对安全性知之甚少 我需要找到基础知识的基本解释 并且正在尝试想出一种合理的方法来使用 Net 将用户密码存储在数据库中 这是我当前的解决方案 private static byte HashPassword string password
  • 从 .Net 打印服务器端(不带 WinForms)

    嘿 印刷迷需要一些指导来引导我朝着正确的方向发展 我正在为当地一家商店开发一个 epos 系统 稍后我们将把它与一个电子商务网站结合起来 epos 系统的前端将是 WinForms 因此我们可以轻松处理 USB 设备 并且我们将使用 Web
  • 如何将常规 numpy 数组转换为记录数组?

    我读了一系列数字 np array f read split dtype np float64 然后我使用以下方法将其转换为二维数组np reshape 之后如何转换arr到记录数组 我尝试过 类似 以下操作 filename unstru
  • 使用 bash 脚本在 EC2 实例上启动会话管理器后如何在 EC2 实例上运行命令?

    我正在编写 bash 脚本来使用会话管理器在 ec2 实例上安装缺少的补丁 我可以使用脚本启动会话 但我不确定如何使用脚本在其上运行命令 instanceid i 098xxxx echo instanceid echo instance
  • Snowflake 身份验证令牌已过期 (390114) - Snowflake-SQLAlchemy 是否有心跳代码?

    我开发了一个 Flask 应用程序 使用 SQLAlchemy 连接到 Snowflake DB 作为后端 如果网站闲置时间超过 4 小时 我会遇到 Snowflake 身份验证令牌过期问题 我在谷歌上查了一下并找到了答案 https gi
  • jQueryUI 手风琴 - 每页可以有多个吗?

    我对 jQuery 很陌生 但已经找到了手风琴小部件并让它在大部分情况下都可以工作 我的问题是 一页上是否可以有多个手风琴 我有几个列表需要在视觉上分开 并且每个列表都需要是自己独立的手风琴 到目前为止 这是我的代码
  • Typescript 中动态导入模块的类型/类是什么?

    我在打字稿中查找导入模块的类型时遇到问题 有人可以帮助我吗 为了澄清我的问题我有一个模块module ts export class RSL1 然后我将其加载到我的index ts with const script await impor
  • 单击锚点时如何设置/存储 cookie

    我正在尝试使用 Cookie 以便引用单击的锚标记应用默认样式或特定样式 即使浏览器关闭 重新打开也是如此 因此 如果用户单击第二个链接 关闭或刷新浏览器并重新打开 则样式应仍处于活动状态 如果这是第一次 则应应用默认样式 这有点超出了我的
  • 如何测试 Greasemonkey 脚本,尤其是在网页的本地副本上?

    我有自己的 javascript 需要用 Greasemonkey 进行测试 我以前从未与 Greasemonkey 合作过 我如何测试脚本 我没有在万维网上测试它 我已经保存了目标页面 Firefox gt 将页面另存为 gt 网页 完成