Guten Tag, Ich habe ein Problem mit der Leinwand. Ich benutze Boostrap und möchte einige Grafiken zeigen. Ich habe dies:Canvas Inhalt zeigt nicht
<div id="charts" class="tab-pane fade">
<div class="container-fluid-charts onload="init();">
<div id="container1" style="width: 100%; height: 400px; margin: 0 auto;border: 1px solid black;background-color: white;"></div>
<canvas id="chart1">Your browser cannot display the charts...</canvas>
</div>
</div>
Das Javascript ist wie folgt zusammengesetzt:
function init() {
var c = document.getElementById("chart1");
var ctx1 = c.getContext('2d');
drawChart1();
}
function drawChart1() {
ctx1.moveTo(ctx.canvas.width/2 , 0);
ctx1.lineTo(0, ctx.canvas.height);
ctx1.stroke();
ctx1.beginPath();
ctx1.arc(95,50,40,0,2*Math.PI);
ctx1.stroke();
ctx1.font = "30px Arial";
ctx1.fillText("Hello World",10,50);
}
ich keine Fehler haben zeigt, und die Leinwand ist leer. Ich denke, es hängt mit dem DOM zusammen ... Jeder kann mir bitte helfen?
Wenn ich Ihrem Beispiel folgen, ich habe einen Fehler „Nicht abgefangene Typeerror: kann Eigenschaft‚getContext‘von null lesen“ – EricF
@EricF Haben Sie die Canvas-ID geändert oder das Skript vor dem Canvas-Element deklariert? Läuft das obige Snippet gut? –
Das Snippet funktioniert gut ... Ich habe nichts geändert. Deshalb habe ich mich gefragt, ob es mit dem DOM zu tun hat. Etwas wie ctx.getElementById ('container') [0]; oder so ähnlich ... Nicht sicher ... – EricF