我正在使用Raphael.js。每次我加載頁面我得到一條錯誤:變量拋出'undefined'錯誤,無法計算出
con is undefined
x = con.x
我拉斐爾文件中擡起頭來con
,這是我發現:
var con = R._getContainer.apply(0, arguments),
container = con && con.container,
x = con.x,
y = con.y,
width = con.width,
height = con.height;
//...
con
顯然這裏定義。這裏是我想加載的代碼:
var paper = new Raphael(ele('canvas_container'), 500, 500);
window.onload = function() {
var circle = paper.circle(100,100,100);
for (i = 0; i < 5; i++) {
var multiplier = i * 5;
paper.circle(250 + (2 * multiplier), 100 + multiplier, 50 - multiplier);
}
}
是否有其他人得到這個錯誤?這是拉斐爾版本中存在的缺陷,還是存在其他一些問題?
你確定'ele('canvas_container')'返回你認爲它是什麼嗎? – Dennis 2012-01-12 16:34:01
@ Dennis--這就是它:'function ele(id){ \t \t return document.getElementById(id); \t}' – dopatraman 2012-01-12 16:35:21
我猜'paper'是一個全局變量。因此,JS將在DOM準備好之前進行評估;因此'document.getElementById(「canvas_container」)'不會返回你所期望的。 – jabclab 2012-01-12 16:36:51