我有两个旋钮,我想在移动第二个时动态控制第一个的值。
到目前为止,我有: (第一把手)$('#inf-knob').knobRot({
classes: ['inf-knob'],
frameWidth: 250,
frameHeight: 250,
frameCount: 100,
detent: false,
discreteSteps: false,
stepCount: 0,
minimumValue: 0,
maximumValue: 2,
dragMultiplier: 0.01,
hideInput: true,
});
$('#inf-knob').on('knobdrag', function(e){
//called until mouse button released
var dial = (500 * $('#inf-knob').val()).toFixed(1);
document.getElementById('freqmain').value = dial + " Hz";
document.getElementById('freqmain2').value = dial;
});
(第二个旋钮在移动时应动态更改第一个旋钮)
$('#black-knob').on('knobdrag', function(e){
gainNode.gain.value = this.value;
console.log(this.value * 2);
$('#inf-knob').val(this.value * 2);
});
我也尝试过使用:
document.getElementById('inf-knob').value = this.value;
没有结果。
我想念的是什么?
由于
答案 0 :(得分:1)
正如KnobRot的文件所述,你应该使用:
返回指定旋钮的值:
$('myselector').knobRot('get')
设置指定旋钮的值或旋钮(将与集合一起使用):
$('myselector').knobRot('set', value)
然后你需要触发KnobRot
刷新。因此,在您的情况下,您可以将其用作:
$('#black-knob').knobRot({
}).on('knobdrag', function(e){
console.log(this.value * 2);
$('#inf-knob').knobRot('set', this.value);
$('#inf-knob').trigger('knobrefresh');
});
P.S