Javascript 使用;ontouchstart“;或;onclick";取决于自定义音频拨号的设备
我已经创建了一个网站,用户可以使用各种音频拨号来创建自己独特的音频声音(即雨、噼啪声等的混合声音)。我的网站链接如下: 我无法在移动/触摸屏设备上使用音频。我认为这是因为我在html输入标记中使用了onclick=“play()”。当我用ontouchstart替换onclick时,音频拨号可以在触摸屏设备上工作,但不能在桌面上工作 有人知道有没有办法让onclick和OnTouch同时开始工作 谢谢 HMTL 在JavaScript中,当使用触摸屏设备时,TouchStart将出现在窗口对象中,使用它您可以监听正确的事件Javascript 使用;ontouchstart“;或;onclick";取决于自定义音频拨号的设备,javascript,html,css,Javascript,Html,Css,我已经创建了一个网站,用户可以使用各种音频拨号来创建自己独特的音频声音(即雨、噼啪声等的混合声音)。我的网站链接如下: 我无法在移动/触摸屏设备上使用音频。我认为这是因为我在html输入标记中使用了onclick=“play()”。当我用ontouchstart替换onclick时,音频拨号可以在触摸屏设备上工作,但不能在桌面上工作 有人知道有没有办法让onclick和OnTouch同时开始工作 谢谢 HMTL 在JavaScript中,当使用触摸屏设备时,TouchStart将出现在窗口对象
<li>
<div class="audio_buttons">
<img src="images/fire.png" class="audio-icons " id="fire-icon">
<input type="range" oninput="setVolume(this)" id='volume1' min=0 max=1 step=0.01 value='0' onclick="play()">
<audio loop id="cs_audio" controls style="display:none">
<source src="audio/fire_loop.mp3" type="audio/mp3">
</audio>
</div>
</li>
var audio_file_1;
var volume1;
function init() {
audio_file_1 = document.getElementById("cs_audio");
volume1 = document.getElementById("volume1");
audio_file_1.play();
}
function setVolume() {
var audio_file_1 = document.getElementById("cs_audio");
audio_file_1.volume = document.getElementById("volume1").value;
}
function play() {
var audio = document.getElementById("cs_audio");
audio.play();
}
const event = "ontouchstart" in window ? "touchstart" : "onclick";
document.getElementById("volume1").addEventListener(event, () => play());