2017-06-16 3 views
-1

Ich habe ein Problem mit meiner Geige: https://jsfiddle.net/5L7etues/button onclick="myValami()", scheint nicht zu funktionieren. Diese Schaltfläche sollte clearinterval innerhalb der Funktion "myValami" ausführen, aber es tut nichts. Ich ging durch die Rechtschreibung, überprüfte es mehr als einmal. Ich blätterte einige Fragen durch, beide schienen mein Problem nicht zu lösen. Ich habe sogar versucht, den Code von W3schools Schritt für Schritt https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_win_clearinterval zu kopieren, funktioniert aber immer noch nicht. Ich vermute, ich vermisse etwas offensichtlich Offensichtliches. Ich schätze jede Antwort!Button onclick führt keine Funktion aus

+1

Zuerst fehlt Ihnen die Existenz der _Browser-Konsole _, in der es _ell Sie_ zeigt, welche Fehler es mit Ihrem Skript gibt. Also gehst du jetzt dorthin, und dann kommst du zurück und berichtest, was es zu sagen hatte. (Bearbeiten Sie die Frage. Fügen Sie außerdem den relevanten Code _in_ die Frage direkt ein. Lesen Sie [bitte].) – CBroe

Antwort

1

statt Inline JavaScript, befestigen Sie den Hörer Ereignis mit addEventListener:

var c = document.getElementById("Canvas"); 
 
var ctx = c.getContext("2d"); 
 
ctx.fillStyle = "#ff0066"; 
 
ctx.fillRect(100, 100, 50, 50); 
 
var X = 100; 
 
var Y = 100; 
 
var W = 50; 
 
var H = 50; 
 
var interval = window.setInterval(myRect, 10); 
 

 
function myRect() { 
 
    ctx.fillRect(X, Y, W, H); 
 
    ctx.fillRect(X = X + 1, Y, W, H); 
 

 
} 
 

 
function myValami() { 
 
    clearInterval(interval); 
 
} 
 

 
var button = document.querySelector('button'); 
 
button.addEventListener('click', myValami);
<canvas id="Canvas" width="400" height="200" style="border:1px solid #000000;"></canvas> 
 
<button>STOP</button>