压缩多余字符

This commit is contained in:
Harvey committed 2019-11-22 11:10:28 +08:00
1 parent 707df15b2d
commit 0c1c1273a6
47 files changed
+356 -382

No files matched your search

@@ -7,7 +7,7 @@ export default function aspectRatio(option) {
...option,
html: `
${i18n.get('Aspect ratio')}:
<span data-ratio="default" class="default current">${i18n.get('Default')}</span>
<span data-ratio="default" class="art-current">${i18n.get('Default')}</span>
<span data-ratio="4:3">4:3</span>
<span data-ratio="16:9">16:9</span>
`,
@@ -22,7 +22,7 @@ export default function aspectRatio(option) {
art.on('aspectRatioChange', ratio => {
const $current = queryAll('span', $menu).find(item => item.dataset.ratio === ratio);
if ($current) {
inverseClass($current, 'current');
inverseClass($current, 'art-current');
}
});
},
+2 -8
View File
@@ -114,17 +114,11 @@ export default class Contextmenu {
set show(value) {
const { $player } = this.art.template;
if (value) {
this.state = true;
addClass($player, 'artplayer-contextmenu-show');
addClass($player, 'art-contextmenu-show');
this.art.emit('contextmenu:show');
} else {
this.state = false;
removeClass($player, 'artplayer-contextmenu-show');
removeClass($player, 'art-contextmenu-show');
this.art.emit('contextmenu:hide');
}
}
toggle() {
this.show = !this.state;
}
}
@@ -9,7 +9,7 @@ export default function playbackRate(option) {
${i18n.get('Play speed')}:
<span data-rate="0.5">0.5</span>
<span data-rate="0.75">0.75</span>
<span data-rate="1.0" class="normal current">${i18n.get('Normal')}</span>
<span data-rate="1.0" class="art-current">${i18n.get('Normal')}</span>
<span data-rate="1.25">1.25</span>
<span data-rate="1.5">1.5</span>
<span data-rate="2.0">2.0</span>
@@ -25,7 +25,7 @@ export default function playbackRate(option) {
art.on('playbackRateChange', rate => {
const $current = queryAll('span', $menu).find(item => Number(item.dataset.rate) === rate);
if ($current) {
inverseClass($current, 'current');
inverseClass($current, 'art-current');
}
});
},
+2 -8
View File
@@ -172,17 +172,11 @@ export default class Controls {
set show(value) {
const { $player } = this.art.template;
if (value) {
this.state = true;
addClass($player, 'artplayer-controls-show');
addClass($player, 'art-controls-show');
this.art.emit('controls:show');
} else {
this.state = false;
removeClass($player, 'artplayer-controls-show');
removeClass($player, 'art-controls-show');
this.art.emit('controls:hide');
}
}
toggle() {
this.show = !this.state;
}
}
+1 -1
View File
@@ -66,7 +66,7 @@ export default function volume(option) {
isDroging = true;
});
proxy($volumeHandle, 'mousemove', event => {
proxy(document, 'mousemove', event => {
if (isDroging) {
player.muted = false;
player.volume = volumeChangeFromEvent(event);
+2 -2
View File
@@ -7,11 +7,11 @@ export default function hoverInit(art, events) {
events.hover(
$player,
() => {
addClass($player, 'artplayer-hover');
addClass($player, 'art-hover');
art.emit('hoverenter');
},
() => {
removeClass($player, 'artplayer-hover');
removeClass($player, 'art-hover');
art.emit('hoverleave');
},
);
@@ -7,8 +7,8 @@ export default function mousemoveInitInit(art, events) {
} = art;
const autoHide = debounce(() => {
addClass($player, 'artplayer-hide-cursor');
removeClass($player, 'artplayer-hover');
addClass($player, 'art-hide-cursor');
removeClass($player, 'art-hover');
art.controls.show = false;
}, 3000);
@@ -20,7 +20,7 @@ export default function mousemoveInitInit(art, events) {
events.proxy($player, 'mousemove', event => {
autoHide.clearTimeout();
removeClass($player, 'artplayer-hide-cursor');
removeClass($player, 'art-hide-cursor');
art.controls.show = true;
if (!art.player.pip && player.playing && event.target === $video) {
autoHide();
+2 -2
View File
@@ -41,13 +41,13 @@ export default class Info {
const { $player } = this.art.template;
if (value) {
this.state = true;
addClass($player, 'artplayer-info-show');
addClass($player, 'art-info-show');
clearTimeout(this.timer);
this.loop();
this.art.emit('info:show');
} else {
this.state = false;
removeClass($player, 'artplayer-info-show');
removeClass($player, 'art-info-show');
clearTimeout(this.timer);
this.art.emit('info:hide');
}
+2 -2
View File
@@ -23,11 +23,11 @@ export default class Layers {
const { $player } = this.art.template;
if (value) {
this.state = true;
removeClass($player, 'artplayer-layers-hide');
removeClass($player, 'art-layers-hide');
this.art.emit('layers:show');
} else {
this.state = false;
addClass($player, 'artplayer-layers-hide');
addClass($player, 'art-layers-hide');
this.art.emit('layers:hide');
}
}
+2 -2
View File
@@ -11,11 +11,11 @@ export default class Loading {
const { $player } = this.art.template;
if (value) {
this.state = true;
addClass($player, 'artplayer-loading-show');
addClass($player, 'art-loading-show');
this.art.emit('loading:show');
} else {
this.state = false;
removeClass($player, 'artplayer-loading-show');
removeClass($player, 'art-loading-show');
this.art.emit('loading:hide');
}
}
+2 -2
View File
@@ -11,11 +11,11 @@ export default class Mask {
const { $player } = this.art.template;
if (value) {
this.state = true;
addClass($player, 'artplayer-mask-show');
addClass($player, 'art-mask-show');
this.art.emit('mask:show');
} else {
this.state = false;
removeClass($player, 'artplayer-mask-show');
removeClass($player, 'art-mask-show');
this.art.emit('mask:hide');
}
}
+2 -2
View File
@@ -9,7 +9,7 @@ export default class Notice {
show(msg, autoHide = true, time = 1000) {
const { $player, $noticeInner } = this.art.template;
this.state = true;
addClass($player, 'artplayer-notice-show');
addClass($player, 'art-notice-show');
$noticeInner.innerHTML = msg instanceof Error ? msg.message.trim() : msg;
clearTimeout(this.timer);
if (autoHide) {
@@ -23,7 +23,7 @@ export default class Notice {
hide() {
const { $player } = this.art.template;
this.state = false;
removeClass($player, 'artplayer-notice-show');
removeClass($player, 'art-notice-show');
this.art.emit('notice:hide');
}
}
+3 -3
View File
@@ -7,7 +7,7 @@ export default function resizeMix(art, player) {
Object.defineProperty(player, 'autoSize', {
get() {
return hasClass($container, 'artplayer-auto-size');
return hasClass($container, 'art-auto-size');
},
set(value) {
if (value) {
@@ -15,7 +15,7 @@ export default function resizeMix(art, player) {
const { width, height } = $container.getBoundingClientRect();
const videoRatio = videoWidth / videoHeight;
const containerRatio = width / height;
addClass($container, 'artplayer-auto-size');
addClass($container, 'art-auto-size');
if (containerRatio > videoRatio) {
const percentage = ((height * videoRatio) / width) * 100;
setStyle($player, 'width', `${percentage}%`);
@@ -30,7 +30,7 @@ export default function resizeMix(art, player) {
height: player.height,
});
} else {
removeClass($container, 'artplayer-auto-size');
removeClass($container, 'art-auto-size');
setStyle($player, 'width', null);
setStyle($player, 'height', null);
art.emit('autoSizeRemove');
+1 -1
View File
@@ -69,7 +69,7 @@ export default function eventInit(art, player) {
} else {
art.loading.show = false;
art.controls.show = false;
addClass($player, 'artplayer-error');
addClass($player, 'art-error');
sleep(1000).then(() => {
notice.show(i18n.get('Video load failed'), false);
art.destroy();
@@ -42,7 +42,7 @@ export default function fullscreenMix(art, player) {
}
screenfull.request($player).then(() => {
addClass($player, 'artplayer-fullscreen');
addClass($player, 'art-fullscreen');
player.aspectRatioReset = true;
art.emit('fullscreenEnabled');
});
@@ -52,7 +52,7 @@ export default function fullscreenMix(art, player) {
}
screenfull.exit().then(() => {
removeClass($player, 'artplayer-fullscreen');
removeClass($player, 'art-fullscreen');
player.aspectRatioReset = true;
art.emit('fullscreenExit');
});
@@ -7,21 +7,21 @@ export default function fullscreenWebMix(art, player) {
Object.defineProperty(player, 'fullscreenWeb', {
get() {
return hasClass($player, 'artplayer-web-fullscreen');
return hasClass($player, 'art-web-fullscreen');
},
set(value) {
if (value) {
if (player.fullscreen) {
player.fullscreen = false;
}
addClass($player, 'artplayer-web-fullscreen');
addClass($player, 'art-web-fullscreen');
player.aspectRatioReset = true;
art.emit('fullscreenWebEnabled');
} else {
if (player.fullscreen) {
player.fullscreen = false;
}
removeClass($player, 'artplayer-web-fullscreen');
removeClass($player, 'art-web-fullscreen');
player.aspectRatioReset = true;
art.emit('fullscreenWebExit');
}
+6 -6
View File
@@ -89,7 +89,7 @@ function customPip(art, player) {
proxy($pipHeader, 'mousemove', event => {
if (isDroging) {
addClass($player, 'is-dragging');
addClass($player, 'art-is-dragging');
setStyle($player, 'left', `${lastPlayerLeft + event.pageX - lastPageX}px`);
setStyle($player, 'top', `${lastPlayerTop + event.pageY - lastPageY}px`);
}
@@ -97,26 +97,26 @@ function customPip(art, player) {
proxy(document, 'mouseup', () => {
isDroging = false;
removeClass($player, 'is-dragging');
removeClass($player, 'art-is-dragging');
});
proxy($pipClose, 'click', () => {
player.pip = false;
isDroging = false;
removeClass($player, 'is-dragging');
removeClass($player, 'art-is-dragging');
});
append($pipTitle, option.title || i18n.get('Mini player'));
const property = {
get() {
return hasClass($player, 'artplayer-pip');
return hasClass($player, 'art-pip');
},
set(value) {
if (value) {
player.autoSize = false;
cacheStyle = $player.style.cssText;
addClass($player, 'artplayer-pip');
addClass($player, 'art-pip');
const $body = document.body;
setStyle($player, 'top', `${$body.clientHeight - player.height - 50}px`);
setStyle($player, 'left', `${$body.clientWidth - player.width - 50}px`);
@@ -127,7 +127,7 @@ function customPip(art, player) {
art.emit('pipEnabled');
} else if (player.pip) {
$player.style.cssText = cacheStyle;
removeClass($player, 'artplayer-pip');
removeClass($player, 'art-pip');
setStyle($player, 'top', null);
setStyle($player, 'left', null);
player.fullscreen = false;
+2 -2
View File
@@ -65,11 +65,11 @@ export default class Setting {
const { $player } = this.art.template;
if (value) {
this.state = true;
addClass($player, 'artplayer-setting-show');
addClass($player, 'art-setting-show');
this.art.emit('setting:show');
} else {
this.state = false;
removeClass($player, 'artplayer-setting-show');
removeClass($player, 'art-setting-show');
this.art.emit('setting:hide');
}
}
+2 -2
View File
@@ -1,4 +1,4 @@
.artplayer-video-player {
.art-video-player {
display: flex;
position: relative;
margin: 0 auto;
@@ -59,7 +59,7 @@
}
@supports ((-webkit-backdrop-filter: initial) or (backdrop-filter: initial)) {
.artplayer-backdrop-filter {
.art-backdrop-filter {
-webkit-backdrop-filter: saturate(180%) blur(20px);
backdrop-filter: saturate(180%) blur(20px);
background-color: rgba(0, 0, 0, 0.7) !important;
@@ -1,4 +1,4 @@
.artplayer-video-player {
.art-video-player {
&[data-aspect-ratio] {
video {
box-sizing: content-box;
+1 -1
View File
@@ -1,4 +1,4 @@
.artplayer-auto-size {
.art-auto-size {
display: flex;
align-items: center;
justify-content: center;
+11 -11
View File
@@ -1,5 +1,5 @@
.artplayer-video-player {
.artplayer-bottom {
.art-video-player {
.art-bottom {
position: absolute;
z-index: 60;
left: 0;
@@ -14,7 +14,7 @@
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAADGCAYAAAAT+OqFAAAAdklEQVQoz42QQQ7AIAgEF/T/D+kbq/RWAlnQyyazA4aoAB4FsBSA/bFjuF1EOL7VbrIrBuusmrt4ZZORfb6ehbWdnRHEIiITaEUKa5EJqUakRSaEYBJSCY2dEstQY7AuxahwXFrvZmWl2rh4JZ07z9dLtesfNj5q0FU3A5ObbwAAAABJRU5ErkJggg==)
repeat-x bottom;
.artplayer-progress {
.art-progress {
position: relative;
pointer-events: auto;
.art-control-progress {
@@ -130,7 +130,7 @@
}
}
.artplayer-controls {
.art-controls {
position: relative;
pointer-events: auto;
display: flex;
@@ -139,8 +139,8 @@
height: 40px;
padding: 5px 0;
.artplayer-controls-left,
.artplayer-controls-right {
.art-controls-left,
.art-controls-right {
display: flex;
}
@@ -248,16 +248,16 @@
}
}
&.artplayer-controls-show,
&.artplayer-hover {
.artplayer-bottom {
&.art-controls-show,
&.art-hover {
.art-bottom {
opacity: 1;
visibility: visible;
}
}
&.artplayer-error,
&.artplayer-destroy {
&.art-error,
&.art-destroy {
.art-progress-indicator,
.art-progress-tip {
display: none !important;
@@ -1,5 +1,5 @@
.artplayer-video-player {
.artplayer-contextmenu {
.art-video-player {
.art-contextmenus {
display: none;
flex-direction: column;
position: absolute;
@@ -31,7 +31,7 @@
span {
display: inline-block;
padding: 0 7px;
&:hover, &.current {
&:hover, &.art-current {
color: #00c9ff;
}
}
@@ -46,8 +46,8 @@
}
}
&.artplayer-contextmenu-show {
.artplayer-contextmenu {
&.art-contextmenu-show {
.art-contextmenus {
display: flex;
}
}
+2 -2
View File
@@ -1,5 +1,5 @@
.artplayer-video-player {
.artplayer-danmuku {
.art-video-player {
.art-danmuku {
position: absolute;
z-index: 30;
left: 0;
+3 -3
View File
@@ -1,9 +1,9 @@
.artplayer-video-player {
&[data-flip="horizontal"] .artplayer-video{
.art-video-player {
&[data-flip="horizontal"] .art-video{
transform: scaleX(-1);
}
&[data-flip="vertical"] .artplayer-video{
&[data-flip="vertical"] .art-video{
transform: scaleY(-1);
}
}
@@ -1,5 +1,5 @@
.artplayer-video-player {
&.artplayer-web-fullscreen {
.art-video-player {
&.art-web-fullscreen {
position: fixed;
z-index: 9999;
width: 100%;
+2 -2
View File
@@ -1,5 +1,5 @@
.artplayer-video-player {
&.artplayer-hide-cursor {
.art-video-player {
&.art-hide-cursor {
* {
cursor: none !important;
}
+5 -5
View File
@@ -1,5 +1,5 @@
.artplayer-video-player {
.artplayer-info {
.art-video-player {
.art-info {
display: none;
flex-direction: column;
position: absolute;
@@ -32,7 +32,7 @@
}
}
.artplayer-info-close {
.art-info-close {
position: absolute;
top: 5px;
right: 5px;
@@ -40,8 +40,8 @@
}
}
&.artplayer-info-show {
.artplayer-info {
&.art-info-show {
.art-info {
display: flex;
}
}
+4 -4
View File
@@ -1,5 +1,5 @@
.artplayer-video-player {
.artplayer-layers {
.art-video-player {
.art-layers {
position: absolute;
z-index: 40;
left: 0;
@@ -15,8 +15,8 @@
}
}
&.artplayer-layers-hide {
.artplayer-layers {
&.art-layers-hide {
.art-layers {
display: none;
}
}
+4 -4
View File
@@ -1,5 +1,5 @@
.artplayer-video-player {
.artplayer-loading {
.art-video-player {
.art-loading {
display: none;
position: absolute;
z-index: 70;
@@ -14,8 +14,8 @@
pointer-events: none;
}
&.artplayer-loading-show {
.artplayer-loading {
&.art-loading-show {
.art-loading {
display: flex;
}
}
+5 -5
View File
@@ -1,5 +1,5 @@
.artplayer-video-player {
.artplayer-mask {
.art-video-player {
.art-mask {
display: none;
align-items: center;
justify-content: center;
@@ -14,7 +14,7 @@
overflow: hidden;
pointer-events: none;
.artplayer-state {
.art-state {
display: flex;
justify-content: center;
align-items: center;
@@ -27,8 +27,8 @@
}
}
&.artplayer-mask-show {
.artplayer-mask {
&.art-mask-show {
.art-mask {
display: flex;
}
}
+5 -5
View File
@@ -1,5 +1,5 @@
.artplayer-video-player {
.artplayer-notice {
.art-video-player {
.art-notice {
display: none;
font-size: 14px;
position: absolute;
@@ -9,7 +9,7 @@
padding: 10px;
width: 100%;
pointer-events: none;
.artplayer-notice-inner {
.art-notice-inner {
display: inline-block;
padding: 5px 10px;
color: #fff;
@@ -18,8 +18,8 @@
}
}
&.artplayer-notice-show {
.artplayer-notice {
&.art-notice-show {
.art-notice {
display: flex;
}
}
+18 -18
View File
@@ -1,5 +1,5 @@
.artplayer-video-player {
.artplayer-pip-header {
.art-video-player {
.art-pip-header {
display: none;
position: absolute;
z-index: 110;
@@ -15,7 +15,7 @@
opacity: 0;
visibility: hidden;
transition: all 0.2s ease-in-out;
.artplayer-pip-title {
.art-pip-title {
flex: 1;
padding: 0 10px;
overflow: hidden;
@@ -23,7 +23,7 @@
white-space: nowrap;
cursor: move;
}
.artplayer-pip-close {
.art-pip-close {
width: 35px;
text-align: center;
font-size: 22px;
@@ -31,43 +31,43 @@
}
}
&.is-dragging {
&.art-is-dragging {
opacity: 0.7;
}
&.artplayer-pip {
&.art-pip {
position: fixed;
z-index: 9999;
width: 400px;
height: 225px;
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 3px 6px 0 rgba(0, 0, 0, 0.2);
.artplayer-pip-header {
.art-pip-header {
display: flex;
user-select: none;
}
&.artplayer-hover {
.artplayer-pip-header {
&.art-hover {
.art-pip-header {
opacity: 1;
visibility: visible;
}
}
.artplayer-mask {
.art-mask {
.art-state {
position: static;
}
}
.artplayer-contextmenu,
.artplayer-bottom,
.artplayer-danmu,
.artplayer-info,
.artplayer-layers,
.artplayer-notice,
.artplayer-setting,
.artplayer-subtitle {
.art-contextmenu,
.art-bottom,
.art-danmu,
.art-info,
.art-layers,
.art-notice,
.art-setting,
.art-subtitle {
display: none !important;
}
}
+8 -8
View File
@@ -1,5 +1,5 @@
.artplayer-video-player {
.artplayer-setting {
.art-video-player {
.art-settings {
display: flex;
align-items: center;
justify-content: center;
@@ -13,8 +13,8 @@
visibility: hidden;
pointer-events: none;
overflow: hidden;
.artplayer-setting-inner {
.art-setting-inner {
position: absolute;
top: 0;
right: -300px;
@@ -26,7 +26,7 @@
transition: all 0.2s ease-in-out;
overflow: auto;
.artplayer-setting-body {
.art-setting-body {
overflow-y: auto;
width: 100%;
height: 100%;
@@ -103,12 +103,12 @@
}
}
&.artplayer-setting-show {
.artplayer-setting {
&.art-setting-show {
.art-settings {
opacity: 1;
visibility: visible;
pointer-events: auto;
.artplayer-setting-inner {
.art-setting-inner {
right: 0;
}
}
+4 -4
View File
@@ -1,5 +1,5 @@
.artplayer-video-player {
.artplayer-subtitle {
.art-video-player {
.art-subtitle {
position: absolute;
z-index: 20;
bottom: 40px;
@@ -16,8 +16,8 @@
}
}
&.artplayer-subtitle-hide {
.artplayer-subtitle {
&.art-subtitle-hide {
.art-subtitle {
display: none;
}
}
+2 -2
View File
@@ -1,5 +1,5 @@
.artplayer-video-player {
.artplayer-video {
.art-video-player {
.art-video {
position: absolute;
z-index: 10;
left: 0;
+2 -2
View File
@@ -93,11 +93,11 @@ export default class Subtitle {
const { $player } = this.art.template;
if (value) {
this.state = true;
removeClass($player, 'artplayer-subtitle-hide');
removeClass($player, 'art-subtitle-hide');
this.art.emit('subtitle:show');
} else {
this.state = false;
addClass($player, 'artplayer-subtitle-hide');
addClass($player, 'art-subtitle-hide');
this.art.emit('subtitle:hide');
}
}
+94 -94
View File
@@ -33,113 +33,113 @@ export default class Template {
initDesktop() {
this.$container.innerHTML = `
<div class="artplayer-video-player" style="--theme: ${this.art.option.theme}">
<video class="artplayer-video">
<track default kind="metadata"></track>
</video>
<div class="artplayer-subtitle"></div>
<div class="artplayer-danmuku"></div>
<div class="artplayer-layers"></div>
<div class="artplayer-mask">
<div class="artplayer-state"></div>
</div>
<div class="artplayer-bottom">
<div class="artplayer-progress"></div>
<div class="artplayer-controls">
<div class="artplayer-controls-left"></div>
<div class="artplayer-controls-right"></div>
</div>
</div>
<div class="artplayer-loading"></div>
<div class="artplayer-notice">
<div class="artplayer-notice-inner"></div>
</div>
<div class="artplayer-setting">
<div class="artplayer-setting-inner artplayer-backdrop-filter">
<div class="artplayer-setting-body"></div>
</div>
</div>
<div class="artplayer-info artplayer-backdrop-filter">
<div class="artplayer-info-panel">
<div class="art-info-item">
<div class="art-info-title">Player version:</div>
<div class="art-info-content">__VERSION__</div>
</div>
<div class="art-info-item">
<div class="art-info-title">Video url:</div>
<div class="art-info-content" data-video="src"></div>
</div>
<div class="art-info-item">
<div class="art-info-title">Video volume:</div>
<div class="art-info-content" data-video="volume"></div>
</div>
<div class="art-info-item">
<div class="art-info-title">Video time:</div>
<div class="art-info-content" data-video="currentTime"></div>
</div>
<div class="art-info-item">
<div class="art-info-title">Video duration:</div>
<div class="art-info-content" data-video="duration"></div>
</div>
<div class="art-info-item">
<div class="art-info-title">Video resolution:</div>
<div class="art-info-content">
<span data-video="videoWidth"></span> x <span data-video="videoHeight"></span>
</div>
</div>
</div>
<div class="artplayer-info-close">[x]</div>
</div>
<div class="artplayer-pip-header">
<div class="artplayer-pip-title"></div>
<div class="artplayer-pip-close">×</div>
</div>
<div class="artplayer-contextmenu artplayer-backdrop-filter"></div>
</div>
<div class="art-video-player" style="--theme: ${this.art.option.theme}">
<video class="art-video">
<track default kind="metadata"></track>
</video>
<div class="art-subtitle"></div>
<div class="art-danmuku"></div>
<div class="art-layers"></div>
<div class="art-mask">
<div class="art-state"></div>
</div>
<div class="art-bottom">
<div class="art-progress"></div>
<div class="art-controls">
<div class="art-controls-left"></div>
<div class="art-controls-right"></div>
</div>
</div>
<div class="art-loading"></div>
<div class="art-notice">
<div class="art-notice-inner"></div>
</div>
<div class="art-settings">
<div class="art-setting-inner art-backdrop-filter">
<div class="art-setting-body"></div>
</div>
</div>
<div class="art-info art-backdrop-filter">
<div class="art-info-panel">
<div class="art-info-item">
<div class="art-info-title">Player version:</div>
<div class="art-info-content">__VERSION__</div>
</div>
<div class="art-info-item">
<div class="art-info-title">Video url:</div>
<div class="art-info-content" data-video="src"></div>
</div>
<div class="art-info-item">
<div class="art-info-title">Video volume:</div>
<div class="art-info-content" data-video="volume"></div>
</div>
<div class="art-info-item">
<div class="art-info-title">Video time:</div>
<div class="art-info-content" data-video="currentTime"></div>
</div>
<div class="art-info-item">
<div class="art-info-title">Video duration:</div>
<div class="art-info-content" data-video="duration"></div>
</div>
<div class="art-info-item">
<div class="art-info-title">Video resolution:</div>
<div class="art-info-content">
<span data-video="videoWidth"></span> x <span data-video="videoHeight"></span>
</div>
</div>
</div>
<div class="art-info-close">[x]</div>
</div>
<div class="art-pip-header">
<div class="art-pip-title"></div>
<div class="art-pip-close">×</div>
</div>
<div class="art-contextmenus art-backdrop-filter"></div>
</div>
`;
this.$player = this.query('.artplayer-video-player');
this.$video = this.query('.artplayer-video');
this.$track = this.query('.artplayer-video track');
this.$subtitle = this.query('.artplayer-subtitle');
this.$danmuku = this.query('.artplayer-danmuku');
this.$bottom = this.query('.artplayer-bottom');
this.$progress = this.query('.artplayer-progress');
this.$controls = this.query('.artplayer-controls');
this.$controlsLeft = this.query('.artplayer-controls-left');
this.$controlsRight = this.query('.artplayer-controls-right');
this.$layers = this.query('.artplayer-layers');
this.$loading = this.query('.artplayer-loading');
this.$notice = this.query('.artplayer-notice');
this.$noticeInner = this.query('.artplayer-notice-inner');
this.$mask = this.query('.artplayer-mask');
this.$state = this.query('.artplayer-state');
this.$setting = this.query('.artplayer-setting');
this.$settingInner = this.query('.artplayer-setting-inner');
this.$settingBody = this.query('.artplayer-setting-body');
this.$info = this.query('.artplayer-info');
this.$infoPanel = this.query('.artplayer-info-panel');
this.$infoClose = this.query('.artplayer-info-close');
this.$pipHeader = this.query('.artplayer-pip-header');
this.$pipTitle = this.query('.artplayer-pip-title');
this.$pipClose = this.query('.artplayer-pip-close');
this.$contextmenu = this.query('.artplayer-contextmenu');
this.$player = this.query('.art-video-player');
this.$video = this.query('.art-video');
this.$track = this.query('.art-video track');
this.$subtitle = this.query('.art-subtitle');
this.$danmuku = this.query('.art-danmuku');
this.$bottom = this.query('.art-bottom');
this.$progress = this.query('.art-progress');
this.$controls = this.query('.art-controls');
this.$controlsLeft = this.query('.art-controls-left');
this.$controlsRight = this.query('.art-controls-right');
this.$layers = this.query('.art-layers');
this.$loading = this.query('.art-loading');
this.$notice = this.query('.art-notice');
this.$noticeInner = this.query('.art-notice-inner');
this.$mask = this.query('.art-mask');
this.$state = this.query('.art-state');
this.$setting = this.query('.art-settings');
this.$settingInner = this.query('.art-setting-inner');
this.$settingBody = this.query('.art-setting-body');
this.$info = this.query('.art-info');
this.$infoPanel = this.query('.art-info-panel');
this.$infoClose = this.query('.art-info-close');
this.$pipHeader = this.query('.art-pip-header');
this.$pipTitle = this.query('.art-pip-title');
this.$pipClose = this.query('.art-pip-close');
this.$contextmenu = this.query('.art-contextmenus');
}
initMobile() {
this.$container.innerHTML = `
<div class="artplayer-video-player">
<video class="artplayer-video"></video>
<div class="art-video-player">
<video class="art-video"></video>
</div>
`;
this.$player = this.query('.artplayer-video-player');
this.$video = this.query('.artplayer-video');
this.$player = this.query('.art-video-player');
this.$video = this.query('.art-video');
}
destroy(removeHtml) {
if (removeHtml) {
this.$container.innerHTML = '';
} else {
addClass(this.$player, 'artplayer-destroy');
addClass(this.$player, 'art-destroy');
}
}
}