nglayout.initialpaint.delay
(Integer).
This value specifies the
amount of time, in milliseconds, before Firefox should
attempt rendering a page (Default of 250).
This is perhaps the most misunderstood setting in Firefox,
with numerous websites recommending you set this to 0
for fastest browsing. Somewhat ironically this actually
increases the total time rendering a webpage, as
explained by
Asa Dotzler:
Setting the initial paint delay at 0, may
get you some content on the screen faster, but it's worth
noting that itwill dramatically slow down the
time it takes the entire page to display. Here's what's
going on. Gecko, Firefox's rendering engine, is trying to
optimize between the cost of waiting for a bit more data
versus doing more painting and reflows as new data comes in.
Waiting a bit longer before it starts painting the page
gives Gecko a chance to receive more content before chewing
up CPU cycles to render and reflow the document. If you drop
this value down to 0 or near 0, that means you'll see the
page start displaying a bit earlier, but not having received
much data in that short interval, you'll have a lot more
paint and reflow cycles to complete rendering of the page.
So if you don’t care
about overall rendering time then yes, setting this to 0
can result in some content being displayed
immediately. If however, you’d prefer improved overall page
rendering time then you’ll want to adjust this value based
on bandwidth available. Low bandwidth (dial-up) connections
can benefit noticeably by increasing this value, with
750-1000 (the former being what I use currently)
proving good. High bandwidth connections should be just fine
at the default (250) – besides, is ¼ second
really “that” noticeable a delay anyway?
content.notify.interval
(Integer).
This option specifies the
amount of time, in microseconds (1/1000 millisecond),
between reflows (Default of 120000). If you
intend to adjust this value then bandwidth should play some
role – low bandwidth connections are unlikely to receive
much data over 0.12 seconds so you might see some
performance benefit to giving it increased time to receive
data before attempting a reflow. With high bandwidth
connections the opposite may likely prove to be true,
although reducing the time between reflows further
can raise CPU use, so there’s no need to reduce this
excessively, if at all, in such cases. If you do wish to use
a lower value then 100000 (0.1 seconds) should be the
lowest you consider going.
content.max.tokenizing.time
(Integer).
The value entered here determines the amount of time, in
microseconds, after which parsing is interrupted to
return to the application’s event loop. It’s recommended
to set this to 3 x content.notify.interval,
e.g. with a content.notify.interval of 150000, set
content.max.tokenizing.time or 450000.
browser.display.show_image_placeholders
(Boolean).
Setting this to trueenables the display of an image placeholder while
loading images on a webpage (Getting replaced by the images
as they download). Setting this to falsedisables
such placeholders, which is recommended if you have a fast
internet connection (As more than likely the placeholder
will be replaced with the image almost immediately). On the
downside however, the placeholder for broken images also no
longer displays.
image.animation_mode
(String).
This setting controls rendering of animated images.
normal specifies that the image is animated as many
times as the file specifies (Infinitely probably). once,
(amazingly enough) sets that an image is animated only once,
i.e. not looped (The final frame of the image is left
displayed when the animation has finished, while none
sets that the image is not animated (Displaying only the
first frame of the image instead).
images.dither
(String).
Dithering can be used to create the illusion of enhanced
colour depth in images with a limited colour palette, e.g.
gifs. That said, dithering can also make images appear
grainier. As such it’s mainly a matter of preference whether
you prefer the appearance of dithered images or not. Firefox
provides 3 options to control image dithering.
auto.
This option allows Firefox to determine whether an image
should be dithered.
true.
This option enables image dithering in Firefox.
false.
This option
disables image dithering in Firefox.
browser.xul.error_pages.enabled
(Boolean).
Previous versions of Firefox had issues with displaying
error pages and as such error windows were used by
default instead and may still be used by setting this to
(false);
These issues
have been resolved now however and error pages are now
enabled by default (true), e.g. typing in a non-existent URL would
result in the following;
Basically, this
option is redundant and should be left set to true
when using Firefox 1.5 or later. The Show Failed URL
Extension is accordingly redundant as a result and should be
uninstalled.
Scripting
javascript.enabled
(Boolean).
JavaScript is an open,
cross-platform object scripting language (Not to be confused
with Sun MicroSystem’s
Java)
and has proven repeatedly to be a security risk with several
(now fixed) vulnerabilities attributed to it e.g.
firetabbing and
code execution via
JavaScript. Setting this to false will
provide improved security, although you will likely find
many web pages that don’t function correctly as a result.
Set this to true should you desire support for
JavaScript. Note – This is the same as the Enable
JavaScript option in the Content tab.
dom.allow_scripts_to_close_windows
(Boolean).
This option controls which
windows can be closed via script. Setting this to true
specifies that any window may be closed and isn’t
recommended. Entering false specifies that only
windows opened by script can be closed via close().
dom.disable_image_src_set
(Boolean).
This option determines
whether JavaScript is allowed to change images. Set this to
true to enable this feature and false
to disable it (recommended). Note – This is the same
as the Change images option in Advanced JavaScript
Settings.
dom.disable_open_click_delay
(Integer).
This option specifies the amount of time, in milliseconds,
that must be surpassed before a popup window created by
JavaScript setInterval()
or
setTimeout()
calls aren’t managed by current Popup Blocker settings.
Beneath this threshold existing Popup Blocker settings are
applied. By default this is 1000 (1 second).
dom.disable_open_during_load
(Boolean).
Set this to true to
enable Firefox’s built-in pop-up blocker, which
disables the loading of much pop-up content on sites –
which will mostly be advertisements (it’s worth noting this
is not perfect and will also disable many legitimate
pop-ups). Should a pop-up be blocked in this way an
information bar will appear at the top of the window, from
which you can select what action to take. Setting this to
falsedisables the pop-up blocker (Not
recommended). Note – This is the same as the Block Popup
Windows option in the Content tab.
dom.disable_window_flip
(Boolean).
This option controls whether JavaScript may be used to bring
windows into the foreground/background via focus().
Setting this to truedisables such actions,
which won’t affect new popups from loading in the
foreground, though can force existing ones to remain in the
background unless switched to manually. Set this to false
to allow the script to determine what happens.Note – This is the same
as the Raise or lower windows option in Advanced
JavaScript Settings.
dom.disable_window_move_resize
(Boolean).
This option controls whether JavaScript can be used to move
&/or resize windows, whereby setting this to
falseenables scripts to do this. It would perhaps be best
to set this to
true,
allowing only yourself to resize/move windows. Note – This is the same as the
Move or resize existing windows option in Advanced
JavaScript Settings.
dom.disable_window_open_feature.close
(Boolean).
Set this to false to
enable the use of scripting to hide the close button
of windows, true forces the close button to always be
displayed (recommended).
dom.disable_window_open_feature.directories
(Boolean).
Set this to false to
enable the use of scripting to hide the bookmarks
toolbar, true prevents the bookmarks toolbar from
being hidden in this way.
dom.disable_window_open_feature.location
(Boolean).
Set this to false to
enable the use of scripting to hide the Location
(Address) bar, true prevents the Address bar from
being hidden.
dom.disable_window_open_feature.menubar
(Boolean).
Set this to false to
enable the use of scripting to hide the Menu bar,
truedisables the hiding of the Menu bar.
dom.disable_window_open_feature.minimizable
(Boolean).
Set this to false to
enable the use of scripting to disable the
minimizing of windows, trueenables the
minimizing of such windows (recommended).
dom.disable_window_open_feature.resizable
(Boolean).
Set this to true to
enable the use of scripting to hide the close button
of windows, false forces the close button to always
be displayed (recommended).
dom.disable_window_open_feature.scrollbar
(Boolean).
Set this to false to
enable the use of scripting to hide the Scroll bar in
windows, truedisables the hiding of the
Scroll bar in windows.
dom.disable_window_open_feature.status
(Boolean).
This option controls whether JavaScript can be used to hide
the status bar, whereby setting this to
falseenables scripts to do this. Set this to
true
to force the status bar to be displayed at all times. Note – This is the same as the
Hide the status bar option in Advanced JavaScript
Settings.
dom.disable_window_open_feature.titlebar
(Boolean).
Set this to false to
enable the use of scripting to hide the Title bar of
windows, true forces the Title bar to always be
displayed.
dom.disable_window_open_feature.toolbar
(Boolean).
Set this to false to
enable the use of scripting to hide the Navigation
toolbar, i.e. Back, Forward, etc. buttons, false
prevents the hiding of the Navigation toolbar.
dom.disable_window_status_change
(Boolean).
This option controls whether JavaScript can be used to
display custom text in the status bar, e.g. moving the mouse
over a hyperlink normally would display where the link
points to, though a script could be used to display
something else instead. Set this to
false
to allow such custom status bar text displayed, while
true
will disable this.
Note – This is the same as the Change status bar text
option in Advanced JavaScript Settings.
dom.event.contextmenu.enabled
(Boolean).
This option controls whether JavaScript can be used to
alter, or even disable the context menu, e.g. right clicking
could be disabled on certain pages. Set this to
true
if you wish to allow sites to be able to do this, while
false
ensures scripts can’t be used to alter this functionality.
Note – This is the same
as the Disable or replace context menus option in
Advanced JavaScript Settings.
dom.max_script_run_time
(Integer).
This specifies the amount of time, in seconds, that a script
may run – the default being
5.
It’d be recommended you leave this at
5
unless you have a specific reason to change it, in which
case -1
allows scripts to run as long as required (& I’d doubt most
reading this would need to do that).
dom.popup_maximum
(Integer).
This value specifies the
maximum number of pop-up windows that may be open
simultaneously. By default this is set to 20,
which no doubt might seem like an excessive amount. Unless
you have a particular reason to allow so many to be open at
once, it would be a good idea to lower this value
(Considering certain sites out there try flooding you with
numerous pop-ups). Personally I’ve set this to 5.