问题标签 [greasemonkey-4]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
215 浏览

firefox - 如何替换 Element 原型方法?

我应该怎么做才能使它在greasemonkey中工作?:

现在,当我使用这个时: document.body.attachShadow({mode:"closed"}).innerHTML = "dec";

这是错误吗:

错误:访问对象的权限被拒绝

我应该怎么做才能使应用程序使用替代方法?

编辑(更多信息):

Firefox Nightly 62.0a1 (2018-06-18) (64 位)

Greasemonkey 4.4.0

测试页面: http: //kind-clarke-ced7cb.bitballoon.com/

现在,attachShadow 方法的这种替换根本不起作用。

#test 的 shadowRoot 返回 null 但应该是[object ShadowRoot],因为 UserScript 强制它。

0 投票
1 回答
75 浏览

javascript - 单击登录按钮的用户脚本(https://steamcommunity.com/login)

我正在尝试在打开https://steamcommunity.com/login/时自动登录。

使用 submit() 或 click() 会将我重定向到https://steamcommunity.com/login/#而不是登录。如果我删除 steamLoginForm.submit(); 并手动单击按钮即可工作;所以我假设我必须以不同的方式点击/提交。

0 投票
1 回答
877 浏览

javascript - 从 tampermonkey 脚本调用 Javascript 文件中的函数

我正在尝试编写一个 tampermonkey 脚本并想调用网页提供的 javascript 函数。页面的 HTML 如下所示:

我的脚本在页面上创建了一个按钮,我希望它调用 openDownloadAsPanel 方法,该方法的定义在 JS 文件中(不是 HTML 文件的一部分)。

为此,我尝试了这个:

然后点击我创建的按钮,addFunction(myFunction, true); 我收到一个错误:openDownloadAsPanel未定义

此外,我不知道 javascript 文件的文件,因为它由 cloudfront 提供,并且如果文件更改,名称会不断更改。或者可能我将不得不解析写在 HTML 文件中的所有 javascript 文件名/路径。

0 投票
3 回答
821 浏览

firefox-addon - 无法将 GM user.js 文件导入 Tampermonkey

在这篇文章之后,我正在尝试将我的 GM 脚本移动到 Tampermonkey 。

我已经从 GM 将我的脚本导出为 zip 文件夹,复制了 user.js 文件,将其压缩为 zip 文件,并尝试分别导入压缩后的 user.js 文件和纯 js 文件,并且两次tampermonkey 都没有使用它们.

对于普通的 js 文件,它给了我一个“无法解析这个”的消息,而对于压缩文件,它只是一个旋转的死亡轮子。Tampermonkey 论坛似乎也关闭了

任何有关整理此问题的帮助将不胜感激。

0 投票
0 回答
343 浏览

javascript - Permission denied to access object when trying to call Greasemonkey-4 injected function

I want to add debug function to the page that allows me to click N times given element as one liner JS console call. I have following short script:

but when I try to to invoke that from the page (console) i get this

enter image description here

Why is that? How can I access exported function?

Moreover, clickMe is printed out as Restricted

enter image description here

How to deal with that ?

0 投票
1 回答
29 浏览

javascript - 仅显示相关的下拉选项

只有那些在网页上与我相关的下拉选项对我来说是可见的。(其他应该隐藏)

例子:

而不是具有选项的下拉菜单:

A B C D E F

我只想让我看到以下 2 个选项 A C

这将节省我们的时间并减少选择错误选项的机会,因为下拉列表目前有 10 多个选项,并且只有 3 个选项与我的团队相关。

请注意:我们不允许更改页面的源代码,所以我希望这可以通过可以在 Grease/Tamper Monkey 上运行的脚本(JS)来实现。

0 投票
0 回答
83 浏览

javascript - 为什么分配给“window”的函数和类在 GreaseMonkey 脚本中不相等?

我有一个Foo带有静态方法的类,它与 进行比较thisFoo出于某种原因,该比较的输出是false

怎么会这样?我怀疑这与 Greasemonkey 在具有提升权限的沙箱中执行用户脚本有关,但即便如此我也不明白为什么会输出false. true此外,如果函数和类未分配给,则输出更改为window

这里发生了什么?

0 投票
1 回答
1294 浏览

javascript - 油脂猴 - 加载 html 和 css 时运行脚本

正如标题所说,我想等到 html 被解析,并且所有样式表都被加载,因为我需要使用currentsyle. 但是,我不想等待图像。所以我不能使用load事件,因为它等待图像。而且我不能使用该DOMContentLoaded事件,因为它不等待样式表。我也不能使用document.body.appendChild在文档末尾添加脚本标记,因为该脚本是在假设页面上的 javascript 被禁用的情况下运行的。

真的没有等待样式的事件吗?

0 投票
1 回答
182 浏览

javascript - Greasemonkey 将参数添加到 URL 的末尾

我有一点 Greasmonkey 麻烦

我想写一个自动添加“?”的脚本 到使用论坛时获取的每个 url 的末尾(说来话长,但这样做可以防止所有者遇到的缓存问题)

我有这个,但它做了我想要的,但是它继续重定向并添加另一个“?” 所以我最终得到“forum.domain.com/viewforum.php?f=4????????????” 并且在不加载论坛的情况下不断添加另一个问号

这对我来说是基本的,所以我无法解决这个问题,所以我们将不胜感激。

我猜需要进行某种检查以查看 ts 是否已经运行,但是当我作为初学者跳入 StackOverflow 时,任何帮助将不胜感激。

谢谢

0 投票
1 回答
1149 浏览

jquery - 使用 jQuery 和 contains() 进行全词匹配

我正在编写一个 Greasemonkey 脚本来选择性地隐藏包含讨厌的东西的元素(如果你愿意的话,一个个人网络清洁剂)。

这是我到目前为止所得到的:

它工作得很好,但它会进行部分单词匹配,这使得短单词不起作用。我想过滤包含“die”和“gun”等词的元素,而不过滤那些带有“candied”或“gung-ho”等词的元素。

需要明确的是,我追求的是整个单词,而不是确切的文本。我希望列表中的“枪”不仅匹配“枪”,还匹配“他开枪”和“开枪”。而不是“枪手中士”。

我在这个主题上看到的所有其他答案都推荐 jQuery 的 filter()。我觉得我理解得不够好。我尝试在循环中使用这一行,但没有:

我想看的另一个角度是摆弄 containsNC 所以它会寻找这个词,但两边都有空格或字符串结尾。不过,我真的不明白 containsNC 是如何工作的。

任何指针将不胜感激!