我有一個函數draw_integer(n,s,x,y,plotx),它在座標(x,y)上繪製大小爲s的HTML5畫布上繪製整數n,我是呼叫內的另一個功能draw_num此功能()如下,
(plot0,數量和大小是各自的ID帆布的,數&大小輸入字段, 功能drawnum()正被觸發的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 }
但是,這也沒有奏效。
你能幫我解決一個更好的方法來解決這個問題嗎?
你在哪裏宣佈'plot0'? – sgroves
請使用jsfiddle.net重現您的錯誤 – Znarkus
@sgroves plot0在全局範圍內聲明。 – Tomarinator