user.js在firefox中如何详细工作

问题描述 投票:0回答:3

我想知道

user.js
首选项文件为用户提供了多少权力以及它如何更详细地工作 我尝试在谷歌上搜索该信息,但找不到任何具有描述性的内容。

据我所知,user.js 是一个 JavaScript 文件,在浏览器启动时执行一次,并覆盖之前设置的所有首选项。

我感兴趣的是你是否可以使用任何可以在其他 javascript 文件中使用的逻辑。

简单的

if-else
语句放在此文件中时会被执行吗? 它是否能够使用在浏览器中执行时可用的 JavaScript 函数(如
setTimeout
)? 你可以像其他js文件一样使用构造吗?我的意思是编写你自己的函数和变量等。

或者 js 这个名字是骗人的,没有任何 js 功能吗?

javascript firefox configuration
3个回答
1
投票

它看起来就像一个 JavaScript 文件。曾经在 Netscape 3 甚至 4 中确实如此,但现在它只是一个带有 .js 扩展名和非常受限制的语法的文件,由单独的(非 JS)解析器解析并且不以任何方式执行。


1
投票

据我所知,您只能从 user.js 调用 pref() 和 *user_pref()* 函数。我尝试根据星期几进行一些条件首选项,但所有未用这些功能加注星标的行都被忽略。

当时,我也找不到任何关于该文件使用的好的文档,但对于我的测试,该文件的使用仅限于这两个函数。

对于系统管理员非常有用,他们可以通过 .XPI 包添加自定义的 user.js 文件,但不适合做花哨的事情。


0
投票

我想我们可以做这样的事情:

function disableAllTelemetry
{
   user_pref(...);
   user_pref(...);
   user_pref(...);
   ...
}

我创建了一个像这样的存储库设置,其中的部分由文件顶部的一些变量切换:

https://github.com/jeremy-neale/user.js

由于除了脚本中定义的函数之外,这不会调用任何其他函数,因此我认为这样的函数会起作用。如果有人发现其他情况请告诉我。

不确定是否使用其他内置 JavaScript 函数来执行类似

setTimeout
之类的操作。

© www.soinside.com 2019 - 2024. All rights reserved.