Start · Sprachen · JavaScript · Referenz · Screen.mozBrightness

Screen.mozBrightness

Eigenschaft

Liest oder setzt die Helligkeit der Bildschirm-Hintergrundbeleuchtung als Gleitkommazahl von <code>0</code> (sehr dunkel) bis <code>1</code> (volle Helligkeit).

seit JavaScript Nicht standardisiert – nur Firefox OS (B2G), entfe deprecated seit ja Kategorie: webapi

Signatur

Screen.mozBrightness

Beschreibung

Screen.mozBrightness ist eine proprietäre, nicht standardisierte Eigenschaft des Screen-Objekts. Sie stammt aus Firefox OS (Boot2Gecko) und gibt die aktuelle Helligkeit der Hintergrundbeleuchtung als doppeltgenaue Gleitkommazahl zurück. 0 bedeutet sehr dunkel, 1 volle Helligkeit.

Die Eigenschaft war les- und schreibbar. Zertifizierte Firefox-OS-Apps, etwa die System-Einstellungen, konnten die Helligkeit damit direkt ändern, zum Beispiel für einen Helligkeitsregler oder eine automatische Anpassung an das Umgebungslicht. Werte außerhalb von [0, 1] führten zu einem Fehler.

In normalen Webseiten und in aktuellen Browsern, auch im Desktop- und Android-Firefox, gibt es mozBrightness nicht. Den Zugriff sollte man deshalb immer mit einer Feature-Erkennung absichern. Für neue Projekte gibt es keinen Web-Standard, der die Bildschirmhelligkeit steuert. Verwandte Aufgaben lassen sich mit der Screen Wake Lock API oder mit CSS-Media-Queries wie prefers-color-scheme und prefers-contrast lösen.

Parameter

Name Typ Default Beschreibung
$value number Nur beim Setzen: neue Helligkeit zwischen 0 und 1 (einschließlich). Werte außerhalb dieses Bereichs lösen einen Fehler aus.

Rückgabewert

Typ
number | undefined
Beschreibung
Aktuelle Helligkeit als Gleitkommazahl zwischen 0 und 1. In Browsern ohne Unterstützung (also praktisch allen heutigen) ergibt der Zugriff undefined.

Beispiele

Feature-Erkennung und Auslesen der Helligkeit

const liesHelligkeit = () => {
  if ('mozBrightness' in screen) {
    return screen.mozBrightness;
  }
  return null; // nicht unterstützt
};

const wert = liesHelligkeit();
console.log(wert === null
  ? 'mozBrightness wird nicht unterstützt'
  : `Helligkeit: ${Math.round(wert * 100)} %`);
mozBrightness wird nicht unterstützt

Helligkeit sicher setzen (Firefox OS, zertifizierte App)

const setzeHelligkeit = (wert) => {
  if (!('mozBrightness' in screen)) {
    console.warn('Helligkeitssteuerung nicht verfügbar');
    return false;
  }
  // Wert auf den gültigen Bereich begrenzen
  const begrenzt = Math.min(1, Math.max(0, Number(wert)));
  try {
    screen.mozBrightness = begrenzt;
    return true;
  } catch (err) {
    console.error('Setzen fehlgeschlagen:', err);
    return false;
  }
};

setzeHelligkeit(0.3);
Helligkeitssteuerung nicht verfügbar

Helligkeitsregler an ein Range-Input binden

// <input type="range" id="regler" min="0" max="1" step="0.05">
const regler = document.querySelector('#regler');

if (regler && 'mozBrightness' in screen) {
  regler.value = screen.mozBrightness;
  regler.addEventListener('input', (e) => {
    screen.mozBrightness = parseFloat(e.target.value);
  });
} else if (regler) {
  regler.disabled = true;
  regler.title = 'Helligkeit kann in diesem Browser nicht gesteuert werden';
}

// Wichtig · Fallstricke

  • Nicht standardisiert und veraltet: Nur in Firefox OS (B2G) verfügbar gewesen, und dort nur für privilegierte bzw. zertifizierte Apps. Kein aktueller Browser unterstützt die Eigenschaft, Firefox Desktop und Android eingeschlossen. Nicht in Produktivcode einsetzen.
  • Immer Feature-Erkennung: Prüfen Sie mit 'mozBrightness' in screen. Ohne Unterstützung liefert ein Lesezugriff undefined, und ein Schreibzugriff legt nur still eine eigene Eigenschaft an, ohne irgendeine Wirkung.
  • Wertebereich: Nur Werte von 0 bis 1 sind gültig. Werte vorher begrenzen, sonst gibt es einen Fehler.
  • Einstellung des Nutzers: Eine vom Nutzer gewählte Helligkeit sollte nicht ungefragt überschrieben werden. Das betrifft Barrierefreiheit und Akkulaufzeit.
  • Alternativen: Im Web gibt es keinen Standard zur Helligkeitssteuerung. Damit der Bildschirm eingeschaltet bleibt, eignet sich navigator.wakeLock.request('screen'). Für helle bzw. dunkle Darstellung gibt es CSS-Media-Queries wie prefers-color-scheme.