Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用jQueryUI滑块控制web音频API振荡器参数,而无需查看HTML表单参数?_Javascript_Web Audio Api - Fatal编程技术网

Javascript 如何使用jQueryUI滑块控制web音频API振荡器参数,而无需查看HTML表单参数?

Javascript 如何使用jQueryUI滑块控制web音频API振荡器参数,而无需查看HTML表单参数?,javascript,web-audio-api,Javascript,Web Audio Api,我一直在使用JQuery UI滑块通过web audio API控制振荡器参数,但我一直在这样做,首先创建一个对应的HTML范围滑块,然后隐藏它,然后使用JQuery滑块控制范围滑块,范围滑块反过来控制相应的振荡器参数。我想知道是否/如何通过JQuery滑块直接控制振荡器参数的方式来实现这一点 从sliderParams回调中设置振荡器.frequency.value,此时您正在将值分配给html滑块(替换pitchInput.value=ui.value) 请参阅:(我没有设置初始振荡器值,

我一直在使用JQuery UI滑块通过web audio API控制振荡器参数,但我一直在这样做,首先创建一个对应的HTML范围滑块,然后隐藏它,然后使用JQuery滑块控制范围滑块,范围滑块反过来控制相应的振荡器参数。我想知道是否/如何通过JQuery滑块直接控制振荡器参数的方式来实现这一点


从sliderParams回调中设置振荡器.frequency.value,此时您正在将值分配给html滑块(替换pitchInput.value=ui.value)

请参阅:(我没有设置初始振荡器值,但移动滑块会更新它)


您可以为您的代码提供一个;它不会造成混乱,而且会帮助我们更好地理解您的问题。谢谢,我确实尝试了您在发布之前给出的解决方案,但我忘记了将整个问题包装在$function(){})中;按您的推断编写代码。
$(function(){




context = new webkitAudioContext();         


var pad1 = document.getElementById("pad1");

pad1.onmousedown= function () {
var pitchState = document.getElementById('oscPitch1').value;
oscillator = context.createOscillator(),  // Creates the oscillator 
oscillator.type = 2;  
oscillator.frequency.value = pitchState;                   
oscillator.connect(context.destination);  // Connects it to output
oscillator.noteOn(0); 


};

pad1.onmouseup = function ()    {  
oscillator.disconnect(); 

};



});








var pitchInput = document.getElementById("oscPitch1");


var sliderParams = {
        'orientation': "vertical",
        'range': "min",
        'min': .5,
        'max': 100,
        'animate': true,
        'step': 0.01,
        'slide': function(event, ui) {  
        pitchInput.value = ui.value;   // This remote controls the input slider

        },

        stop: function( event, ui ) {}

};

$('#sliderOne').slider(sliderParams);
$(function(){