题目:用原型的方法,绘制会动的汽车,要求1.可以一下制作一组汽车;2.让汽车向右移动;3.移动的距离可以手动控制
分析:
- 用构造函数方方创建一组车辆的坐标
- 绘制汽车
- 向右移动(可手动更改移动距离)
//用构造函数创建一组坐标
var Car = function (x, y) {
this.x = x;
this.y = y;
};
//用原型方法向Car内部添加属性(方法),绘制汽车
Car.prototype.draw = function () {
var carHtml = '<img src="https://i.loli.net/2018/04/30/5ae6b2fd38015.jpg">';
this.carElement = $(carHtml);
this.carElement.css({
position : "absolute",
left : this.x,
top : this.y
});
$("body").append(this.carElement);
};
//向右移动,可手动修改参数
Car.prototype.moveRight = function (distance) {
this.x += distance;
this.carElement.css({
left : this.x,
top : this.y
})
};
//调用Car,可随时新建n辆汽车,且独立
var tesla = new Car(20.20);
tesla.draw();
//setinterval()方法,周期性的调用函数
setInterval(function () {tesla.moveRight(10)},10);
注意:如果用这种方法调用setInterval(tesla.moveRight(10),10)
,setInterval()
会调用windows
的moveRight
,而不是tesla
的moveRight
,看到的效果是:只在页面加载时,运行了一次,就没有后文了。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。