Allowing only certain sites to use JavaScript: Difference between revisions

From MozillaZine Knowledge Base
Jump to navigationJump to search
No edit summary
(Added links to NoScript)
Line 1: Line 1:
: ''This article applies to Firefox and Mozilla Suite''
: ''This article applies to Firefox and Mozilla Suite''
: ''Note: A user interface for editing a JavaScript-enabled site whitelist exists in the [http://www.noscript.net/ NoScript extension].


If you prefer to keep [[JavaScript]] turned off but need it for a few sites, you can configure the browser to use a JavaScript site "whitelist."  There is no built-in interface to do this, so you will need to [[Editing configuration | edit user.js]]. You can also edit [[about:config]], but [https://bugzilla.mozilla.org/show_bug.cgi?id=284673 due to a bug], you will not see the changes you've made (though they will take effect).
If you prefer to keep [[JavaScript]] turned off but need it for a few sites, you can configure the browser to use a JavaScript site "whitelist."  There is no built-in interface to do this, so you will need to [[Editing configuration | edit user.js]]. You can also edit [[about:config]], but [https://bugzilla.mozilla.org/show_bug.cgi?id=284673 due to a bug], you will not see the changes you've made (though they will take effect).
Line 32: Line 34:
* [[Editing configuration]]
* [[Editing configuration]]
* [[JavaScript]]
* [[JavaScript]]
* [http://www.noscript.net/ NoScript - JavaScript Whitelist Extension]


[[Category:Security and privacy]] [[Category:Configuration (Firefox)]] [[Category:Configuration (Mozilla Suite)]]
[[Category:Security and privacy]] [[Category:Configuration (Firefox)]] [[Category:Configuration (Mozilla Suite)]]

Revision as of 03:51, 19 May 2005

This article applies to Firefox and Mozilla Suite
Note: A user interface for editing a JavaScript-enabled site whitelist exists in the NoScript extension.

If you prefer to keep JavaScript turned off but need it for a few sites, you can configure the browser to use a JavaScript site "whitelist." There is no built-in interface to do this, so you will need to edit user.js. You can also edit about:config, but due to a bug, you will not see the changes you've made (though they will take effect).

In user.js, add the following lines:

user_pref("capability.policy.policynames", "jsok");
user_pref("capability.policy.default.javascript.enabled", "noAccess");
user_pref("capability.policy.jsok.sites", "http://www.example.com");
user_pref("capability.policy.jsok.javascript.enabled", "allAccess");

The line with capability.policy.jsok.sites can have multiple websites separated by spaces, like so:

user_pref("capability.policy.jsok.sites", "http://www.example.com http://www.example.net");

(Naturally, you would replace http://www.example.com and http://www.example.net with sites you wanted to whitelist.)

Similarly, you can create a JavaScript site "blacklist" — that is, allow JavaScript on every site but those you specify. For this behavior, you would add the following lines to user.js:

user_pref("capability.policy.policynames", "nojs");
user_pref("capability.policy.nojs.sites", "http://www.example.com http://www.example.net");
user_pref("capability.policy.nojs.javascript.enabled", "noAccess");

These examples were taken from the CAPS documentation.

You should have JavaScript enabled when you use these preferences, because disabling it will override these settings.

You need to restart your browser after editing user.js, otherwise the changes will not take effect.

See Also