在html表中绘制画布在JavaScript中不起作用
首先,我得到了一个简单的解决方案,用于绘制画布元素。 HTML中的代码如下所示:在html表中绘制画布在JavaScript中不起作用,javascript,html,canvas,Javascript,Html,Canvas,首先,我得到了一个简单的解决方案,用于绘制画布元素。 HTML中的代码如下所示: ... <td align="center" class="TableUnten" id="Gesamtleistung0"> <canvas id="myCanvas"></canvas> <script type="text/javascript"> d
...
<td align="center" class="TableUnten" id="Gesamtleistung0">
<canvas id="myCanvas"></canvas>
<script type="text/javascript">
drawCanvas("myCanvas");
</script>
</td>
...
这是可行的,画布将显示在表中
但是现在我想在一个单独的.js文件中进行函数调用。所以我认为这可以奏效:
function tester() {
document.getElementById("Gesamtleistung0").innerHTML = drawCanvas("myCanvas");
}
问题是变量cv不包含画布元素mycanvas的名称,但显示为null。而变量canvasname是用myCanvas声明的
你知道我能做些什么来调用画布绘图函数,然后把它放到一个表中吗
谢谢请确保您在页面头部引用了其他javascript绘图文件
<head>
<script type="text/javascript" src="yourDrawingFile.js"></script>
</head>
由于您已经在Gesamtleistung0中创建了画布,因此应该能够在该外部脚本中直接调用drawCanvas,而无需设置任何innerHTML
<script>
window.onload=function(){
....
function tester(){
drawCanvas("myCanvas");
}
....
看看这个例子,我刚写完,也许会对你有所帮助。看那顶柱子的底部。
您可能正在使用document.write,请使用当前的drawCanvas脚本。不,我没有使用document.write。我不明白为什么canvasname包含myCanvas而cv不包含?我总是收到一条错误消息,说cv声明为null。可能问题是调用drawCanvas时未加载文档,因此您还无法按id找到画布。请在document.onload处理程序中完成该工作。我不理解将drawCanvas的结果分配给div内容的意义。
<script>
window.onload=function(){
....
function tester(){
drawCanvas("myCanvas");
}
....