为可怕的头衔道歉; 我不确定如何用这么几个字符来总结这个问题。
TL; DR 为什么$("#canvas").appendChild()
无效?
我有一个原型Car
,在实例化时,应该在div中创建一个div,其id为" canvas"。
$(document).ready(function() {
var canvas = $("#canvas");
function Car(speed) {
...
this.domDiv = document.createElement("div");
$(this.domDiv).addClass("car");
this.addToCanvas = function() {
canvas.appendChild(this.domDiv);
};
this.addToCanvas();
...
}
car1 = new Car(0.5);
});
但是,我得到Uncaught TypeError: canvas.appendChild is not a function
,我不明白为什么。
答案 0 :(得分:2)
appendChild
是一个DOM函数。 append
是一个jQuery函数(canvas是一个jQuery对象)。
答案 1 :(得分:1)
我认为正确的函数是追加的,而不是在jQuery包装器上的appendChild
canvas.append(this.domDiv);
如果你使用了主机查询选择器(document.getElementById(' canvas'))而不是jQuery选择器($(' canvas')),你会想要使用appendChild / p>