/**
* @file track-button.js
*/
'../menu/menu-button.js'에서 MenuButton 가져오기;
'../component.js'에서 컴포넌트 가져오기;
import * as Fn from '../utils/fn.js';
/**
* 특정 트랙 유형(예: 자막)을 전환하는 버튼의 기본 클래스입니다.
*
* @extends 메뉴버튼
*/
TrackButton 클래스는 MenuButton {를 확장합니다.
/**
* 이 클래스의 인스턴스를 만듭니다.
*
* @param {플레이어} 플레이어
* 이 클래스가 연결되어야 하는 `Player`.
*
* @param {객체} [옵션]
* 플레이어 옵션의 키/값 저장소.
*/
생성자(플레이어, 옵션) {
const 트랙 = options.tracks;
super(플레이어, 옵션);
if (이.항목.길이 < = 1) {
this.hide();
}
if (!트랙) {
반품;
}
const updateHandler = Fn.bind(this, this.update);
tracks.addEventListener('removetrack', updateHandler);
tracks.addEventListener('addtrack', updateHandler);
tracks.addEventListener('labelchange', updateHandler);
this.player_.on('준비', updateHandler);
this.player_.on('dispose', function() {
tracks.removeEventListener('removetrack', updateHandler);
tracks.removeEventListener('addtrack', updateHandler);
tracks.removeEventListener('labelchange', updateHandler);
});
}
}
Component.registerComponent('트랙버튼', 트랙버튼);
기본 TrackButton 내보내기;