gpt4 book ai didi

javascript - 为什么这个函数调用失败?

转载 作者:行者123 更新时间:2023-11-30 13:37:23 26 4
gpt4 key购买 nike

新手问题...这很好用:

function draw() {
var drawingCanvas = document.getElementById('myDrawing');
// Check the element is in the DOM and the browser supports canvas
if(drawingCanvas && drawingCanvas.getContext) {
// Initaliase a 2-dimensional drawing context
var context = drawingCanvas.getContext('2d');
context.strokeStyle = "#000000";
context.fillStyle = "#FFFF00";
context.beginPath();
context.arc(100,100,50,0,Math.PI*2,true);
context.closePath();
context.stroke();
context.fill();
}
}

但这并没有显示任何东西:

    function draw() {
var drawingCanvas = document.getElementById('myDrawing');
// Check the element is in the DOM and the browser supports canvas
if(drawingCanvas && drawingCanvas.getContext) {
// Initaliase a 2-dimensional drawing context
var context = drawingCanvas.getContext('2d');
drawface();
}
}

function drawface() {
context.strokeStyle = "#000000";
context.fillStyle = "#FFFF00";
context.beginPath();
context.arc(100,100,50,0,Math.PI*2,true);
context.closePath();
context.stroke();
context.fill();
}

我错过了什么?

非常感谢以下所有人的回答 - 以及您对这个愚蠢错误的耐心等待!

最佳答案

contextdraw 函数中定义。 drawface 没有得到引用。要么在函数中传递它,要么在函数范围之外声明它。

var context = blah;

function draw(){};
function drawface(){};

替代方法:

function drawface(context) {
context.blah = foo;
}

此外,请确保此代码在 DOM 准备好之后执行,或者脚本在结束主体标记之前执行。

关于javascript - 为什么这个函数调用失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4258953/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com