Firefox 3 introduce el concepto de las preferencias sobre el contenido. Esto permite ejecutar código dentro del chrome (en otras palabras: las extensiones y el navegador en sí, no los sitios web) para guardar las preferencias a nivel local en cada sitio. Esto hace posible escribir una extensión que permita al usuario personalizar la apariencia de sitios web específicos (por ejemplo, poner el tamaño de letra más grande en los sitios que utilizan fuentes muy pequeñas).
El servicio de preferencias de contenido, ejecutado por nsIContentPrefService, ofrece funciones para fijar y recuperar las preferencias para determinados sitios o preferencias globales. Las preferencias globales se utilizan cada vez que una preferencia para un sitio específico no está disponible.
Ejemplo: Configurar y recuperar preferencias
Este ejemplo demuestra como guardar preferencias y después recuperarlas
var ioSvc = Components.classes["@mozilla.org/network/io-service;1"]
.getService(Components.interfaces.nsIIOService);
var prefService = Components.classes["@mozilla.org/content-pref/service;1"]
.getService(Components.interfaces.nsIContentPrefService);
// Crea un objeto URI con la referencia del sitio por el cual se guardará la preferencia
var uri = ioSvc.newURI("https://developer.mozilla.org/", null, null);
// Define el valor de la preferencia "devmo.somesetting" a "foo".
prefService.setPref(uri, "devmo.somesetting", "foo");
...
// Devuelve el valor de la preferencia "devmo.somesetting".
var value = prefService.getPref(uri, "devmo.somesetting");
Véase también
nsIContentPrefService
, nsIContentPrefObserver