1 回答

TA貢獻(xiàn)1777條經(jīng)驗(yàn) 獲得超3個(gè)贊
您每次都創(chuàng)建新圖像并嘗試在加載圖像之前繪制它。更好的方法是在開(kāi)始時(shí)準(zhǔn)備所有圖像并繪制它。您的代碼稍作改動(dòng),一切都會(huì)起作用:
準(zhǔn)備圖片:
var imagesSrc = {
ballotBoxImgSrc: 'img/ballotBox.png',
bulletinYes: 'img/yes.jpg',
bulletinNo: 'img/no.jpg'
};
var images = {
ballotBoxImgSrc: new Image(),
bulletinYes: new Image(),
bulletinNo: new Image()
}
for(let [name,value] of Object.entries(imagesSrc)) {
images[name].src = value;
}
畫(huà):
rect.prototype = {
draw: function (){
var bulletin = images[this.imagesSrc];
ctx.drawImage(bulletin, this.position[0], this.position[1], this.size[0], this.size[1]);
}
}
添加回答
舉報(bào)