J'essaie de faire jouer l'oscillateur lorsque la souris est sur la toile et d'arrêter quand elle ne l'est pas. Cependant, avec le code actuel, il fonctionne une fois après la page de chargement, lorsque la souris est sur la toile seconde erreur de temps:Redémarrer l'oscillateur en javascript
"Uncaught InvalidStateError: Failed to execute 'start' on 'OscillatorNode': cannot call start more than once.
var ac = new window.AudioContext() || new window.webkitAudioContext();
var osc = ac.createOscillator();
var canvas1 = document.getElementById("canvas1");
canvas1.addEventListener("mouseover", playosc);
canvas1.addEventListener("mouseout", stoposc);
function playosc() {
osc.frequency.value = 440;
osc.connect(ac.destination);
osc.start();
}
function stoposc() {
osc.stop();
}
Comment redémarrer l'oscillateur? Merci.
@ K3N en effet, merci, je viens de copier cela de l'OP. –
@digeridoo Veuillez considérer cette réponse comme correcte (en cliquant sur la coche grise en haut à gauche de cette réponse) si elle répondait à vos préoccupations. –