Javascript TypeError:无法读取属性';css';未定义的
尝试遵循儿童JavaScript书籍(第186-193页)中的示例,并获得TypeError:无法读取未定义的属性“css” 我很确定这个问题与jQuery对象有关,但在第25行中不断出现错误Javascript TypeError:无法读取属性';css';未定义的,javascript,html,css,Javascript,Html,Css,尝试遵循儿童JavaScript书籍(第186-193页)中的示例,并获得TypeError:无法读取未定义的属性“css” 我很确定这个问题与jQuery对象有关,但在第25行中不断出现错误 this.carElement.css 请指出我把事情弄糟的地方 <!DOCTYPE html> <html> <head> <title>Cars</title> </head> <body> &l
this.carElement.css
请指出我把事情弄糟的地方
<!DOCTYPE html>
<html>
<head>
<title>Cars</title>
</head>
<body>
<script src="https://code.jquery.com/jquery-2.1.0.js"></script>
<script type="text/javascript">
let Car = function(x, y) {
this.x = x;
this.y = y;
};
Car.prototype.draw = function(){
let carHtml = '<img src="https://static.thenounproject.com/png/158575-200.png">';
let carElement = $(carHtml);
this.carElement.css({
position: "absolute",
left: this.x,
top: this.y
});
$("body").append(carElement)
};
Car.prototype.moveRight = function(){
this.x += 50;
this.carElement.css({
left: this.x,
top: this.y
});
}
let tesla = new Car (20, 20);
tesla.draw();
tesla.moveRight();
</script>
汽车
让车=功能(x,y){
这个.x=x;
这个。y=y;
};
Car.prototype.draw=函数(){
让carHtml='';
让carElement=$(carHtml);
this.carElement.css({
位置:“绝对”,
左:这个.x,
托普:这个,y
});
$(“正文”).append(carElement)
};
Car.prototype.moveRight=函数(){
这个.x+=50;
this.carElement.css({
左:这个.x,
托普:这个,y
});
}
让特斯拉=新车(20,20);
特斯拉。德鲁();
特斯拉。移动右键();
而不是让carElement=$(carHtml)
您必须编写this.carElement=$(carHtml)
,否则this.carElement是未定义的,正如错误所说。变量carElement
和属性this.carElement
不是一回事。您的意思是将其中一个设置为另一个吗?除了上面提到的注释外,您还需要将字符串解析为html以使用jQuery应用css<代码>$.parseHTML(carHtml)