我有一个函数 draw_integer(n,s,x,y,plotx) ,它在坐标 (x,y) 中大小为 s 的 HTML5 画布上绘制一个整数 ,n,我在另一个函数 draw_num() 中调用这个函数接下来,
(plot0、number 和 size 是画布的相应 id、number 和 size 输入字段,函数 drawum() 由 onclick 事件触发。)
function drawnum() {
var n = document.getElementById('number').value;
var s = document.getElementById('size').value;
console.debug(n,s);
draw_integer(n,s,100,100,plot0); // this doesn't get executed
}
function draw_integer(n,s,x,y,plotx){ //lots of code }
在drawum下调用的draw_integer函数没有被执行,我无法识别的问题是什么。
使用 console.debug() 返回用户输入的适当的数字和大小值,如果我使用 draw_integer(3,100,100,100,plot0) (大小为 100 的绘图号 3)而不是 draw_integer(n,s,100,100,plot0) 它作品。
这意味着在将变量 n 和 s 从 drawum() 传递到 draw_integer() 时发生了一些错误。
认为这可能是由于变量的本地范围,我尝试了这个。
var n = document.getElementById('number').value;
var s = document.getElementById('size').value;
function drawnum() {
console.debug(n,s);
draw_integer(n,s,100,100,plot0); // this doesn't get executed
}
function draw_integer(n,s,x,y,plotx){ //lots of code }
但这也没有用。
你能帮我或建议一个更好的方法来解决这个问题。