Update index.html
Browse files- index.html +20 -22
index.html
CHANGED
@@ -992,16 +992,21 @@ document.addEventListener('DOMContentLoaded', function() {
|
|
992 |
}
|
993 |
}
|
994 |
|
995 |
-
// 音量を適用 (リアルタイムで反映)
|
996 |
function applyVolume() {
|
997 |
if (!isAudioCombined) return;
|
998 |
|
999 |
-
// 0-
|
1000 |
-
const
|
1001 |
-
//
|
1002 |
-
const
|
1003 |
-
|
1004 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
1005 |
updateVolumeIcon();
|
1006 |
}
|
1007 |
|
@@ -1335,30 +1340,25 @@ function applyVolume() {
|
|
1335 |
volumeSlider.addEventListener('input', function() {
|
1336 |
if (!isAudioCombined) return;
|
1337 |
|
1338 |
-
//
|
1339 |
-
|
1340 |
-
const globalVolume = parseFloat(globalVolumeSlider.value) / 10;
|
1341 |
-
const finalVolume = Math.max(0, Math.min(1, baseVolume * globalVolume));
|
1342 |
|
1343 |
-
|
1344 |
-
|
1345 |
-
updateVolumeIcon();
|
1346 |
});
|
1347 |
|
1348 |
volumeBtn.addEventListener('click', function() {
|
1349 |
if (!isAudioCombined) return;
|
1350 |
|
1351 |
if (video.volume > 0) {
|
1352 |
-
lastVolume = volumeSlider.value;
|
1353 |
-
video.volume = 0;
|
1354 |
volumeSlider.value = 0;
|
1355 |
} else {
|
1356 |
-
// グローバル音量係数を考慮して復元
|
1357 |
-
const globalVolume = parseFloat(globalVolumeSlider.value) / 10;
|
1358 |
-
video.volume = Math.max(0, Math.min(1, lastVolume * globalVolume));
|
1359 |
volumeSlider.value = lastVolume;
|
1360 |
}
|
1361 |
-
|
|
|
|
|
1362 |
});
|
1363 |
|
1364 |
// 音量アイコンを更新
|
@@ -1462,10 +1462,8 @@ volumeBtn.addEventListener('click', function() {
|
|
1462 |
});
|
1463 |
});
|
1464 |
|
1465 |
-
// グローバル音量スライダーのイベントリスナーを更新
|
1466 |
globalVolumeSlider.addEventListener('input', function() {
|
1467 |
const value = parseFloat(this.value);
|
1468 |
-
// 表示値は0-10の範囲で表示
|
1469 |
globalVolumeValue.textContent = value.toFixed(1);
|
1470 |
|
1471 |
// スライダーの背景を更新
|
|
|
992 |
}
|
993 |
}
|
994 |
|
|
|
995 |
function applyVolume() {
|
996 |
if (!isAudioCombined) return;
|
997 |
|
998 |
+
// ベース音量 (0-1)
|
999 |
+
const baseVolume = parseFloat(volumeSlider.value);
|
1000 |
+
// グローバル音量係数 (0-10)
|
1001 |
+
const globalVolume = parseFloat(globalVolumeSlider.value) / 10; // 0-1に変換
|
1002 |
+
|
1003 |
+
// 最終音量 (0-1)
|
1004 |
+
const finalVolume = Math.max(0, Math.min(1, baseVolume * globalVolume));
|
1005 |
+
|
1006 |
+
// 動画の音量を設定
|
1007 |
+
video.volume = finalVolume;
|
1008 |
+
|
1009 |
+
// 音量アイコンを更新
|
1010 |
updateVolumeIcon();
|
1011 |
}
|
1012 |
|
|
|
1340 |
volumeSlider.addEventListener('input', function() {
|
1341 |
if (!isAudioCombined) return;
|
1342 |
|
1343 |
+
// ベース音量を保存
|
1344 |
+
lastVolume = parseFloat(this.value);
|
|
|
|
|
1345 |
|
1346 |
+
// 音量を適用
|
1347 |
+
applyVolume();
|
|
|
1348 |
});
|
1349 |
|
1350 |
volumeBtn.addEventListener('click', function() {
|
1351 |
if (!isAudioCombined) return;
|
1352 |
|
1353 |
if (video.volume > 0) {
|
1354 |
+
lastVolume = parseFloat(volumeSlider.value);
|
|
|
1355 |
volumeSlider.value = 0;
|
1356 |
} else {
|
|
|
|
|
|
|
1357 |
volumeSlider.value = lastVolume;
|
1358 |
}
|
1359 |
+
|
1360 |
+
// 音量を適用
|
1361 |
+
applyVolume();
|
1362 |
});
|
1363 |
|
1364 |
// 音量アイコンを更新
|
|
|
1462 |
});
|
1463 |
});
|
1464 |
|
|
|
1465 |
globalVolumeSlider.addEventListener('input', function() {
|
1466 |
const value = parseFloat(this.value);
|
|
|
1467 |
globalVolumeValue.textContent = value.toFixed(1);
|
1468 |
|
1469 |
// スライダーの背景を更新
|