/**
* @file verbleibende-zeit-anzeige.js
* /
import TimeDisplay from './time-display';
importiere Komponente aus '../../component.js';
import * as Dom from '../../utils/dom.js';
/**
* Zeigt die verbleibende Zeit im Video an
*
* @erweitert Komponente
* /
class RemainingTimeDisplay extends TimeDisplay {
/**
* Erzeugt eine Instanz dieser Klasse.
*
* @param {Player} Spieler
* Der `Player`, dem diese Klasse zugeordnet werden soll.
*
* @param {Object} [Optionen]
* Der Schlüssel/Wertspeicher der Playeroptionen.
* /
constructor(spieler, optionen) {
super(Spieler, Optionen);
this.on(player, 'durationchange', (e) => this.updateContent(e));
}
/**
* Erzeugt den Standard-DOM "Klassenname".
*
* @return {string}
* Der DOM `className` für dieses Objekt.
* /
buildCSSClass() {
return 'vjs-Restlaufzeit';
}
/**
* Erstellen Sie das DOM-Element der Komponente mit dem Minus-Zeichen vor der Zeit
*
* @return {Element}
* Das Element, das erstellt wurde.
* /
createEl() {
const el = super.createEl();
if (this.options_.displayNegative !== false) {
el.insertBefore(Dom.createEl('span', {}, {'aria-hidden': true}, '-'), this.contentEl_);
}
zurück el;
}
/**
* Aktualisieren der Restzeitanzeige.
*
* @param {EventTarget~Event} [event]
* Das "timeupdate"- oder "durationchange"-Ereignis, das diese Aktion ausgelöst hat.
*
* @listens Player#timeupdate
* @listens Player#durationchange
* /
updateContent(event) {
if (typeof this.player_.duration() !== 'Zahl') {
rückkehr;
}
zeit lassen;
// @deprecated Wir sollten nur remainingTimeDisplay verwenden
// ab video.js 7
if (this.player_.ended()) {
zeit = 0;
} else if (this.player_.remainingTimeDisplay) {
time = this.player_.remainingTimeDisplay();
} else {
time = this.player_.remainingTime();
}
this.updateTextNode_(time);
}
}
/**
* Der Text, der für Benutzer von Bildschirmlesegeräten zur Restzeitanzeige hinzugefügt wird.
*
* @Typ {String}
* @privat
* /
RemainingTimeDisplay.prototype.labelText_ = 'Verbleibende Zeit';
/**
* Der Text, der über den Steuerelementen von `RemainingTimeDisplay` angezeigt werden soll. Zugefügt für die Lokalisierung.
*
* @Typ {String}
* @privat
*
* @veraltet in v7; controlText_ wird in nicht aktiven Anzeigekomponenten nicht verwendet
* /
RemainingTimeDisplay.prototype.controlText_ = 'Verbleibende Zeit';
Component.registerComponent('RestZeitAnzeige', RestZeitAnzeige);
exportieren Standard Restzeitanzeige;