簡體   English   中英

在腳本中設置默認音量

[英]Set Default Volume in script

我有一個網站可在加載音樂時循環播放音樂,但聲音太大。 我有一個滑桿來更改音樂音量,但是如何將其默認設置為滑桿的25%?

網站

<audio id=music loop autoplay src="peep.mp3">
  <p>If you are reading this, it is because your browser does not support the audio element.</p>
</audio>
<input id="vol-control" type="range" min="0" max="100" step="1" oninput="SetVolume(this.value)" onchange="SetVolume(this.value)"></input>

<script>
    function SetVolume(val)
    {
        var player = document.getElementById('music');
        console.log('Before: ' + player.volume);
        player.volume = val / 100;
        console.log('After: ' + player.volume);
    }
</script>

只需創建一個設置音量的腳本即可:

var audio = document.getElementById("music");
audio.volume = 0.25;

如果您正在使用audio標簽,則只需獲取Java腳本中的DOM節點並操縱volume屬性

var audio = document.querySelector('audio');
// Getting
console.log(volume); // 1
// Setting
audio.volume = 0.5; // Reduce the Volume by Half

您設置的數字應在0.01.0的范圍內,其中0.0是最安靜的,而1.0是最大的。

  • input是一個Void元素,因此不需要結束</input>
  • 您正在使用maxmin ,也要使用value
  • 避免使用內聯JavaScript。 使邏輯遠離標記。
  • setVolume()一樣初始化您的函數
  • 使用camelCase setVolume而不是PascalCase SetVolume ,因為它是常規函數,而不是Method,Class或構造函數...

 const audio = document.getElementById('audio'), input = document.getElementById('volume'), setVolume = () => audio.volume = input.value / 100; input.addEventListener("input", setVolume); setVolume(); 
 <audio id=audio loop autoplay src="//upload.wikimedia.org/wikipedia/en/4/45/ACDC_-_Back_In_Black-sample.ogg">Audio is not supported on your browser. Update it.</audio> <input id=volume type=range min=0 max=100 value=25 step=1> 

我想你也會喜歡這個例子

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM