[英]how to improve the performance o my js game
几天前,我已经开始学习JavaScript,并完成了codeacadmey的工作,并认为我会尝试制作一个简单的游戏。
所以我想出了记忆游戏,您必须在其中找到图像对。
一切正常,我建立了一个评分系统,但是一些人说过,一旦选择了允许其他选择的牌,就会发生延迟,这会阻碍他们,而且我不知道如何提高性能。
这是我认为引起延迟的一些代码,是否有更好的方法产生相同的结果,对不起,在我刚接触所有这些之前。
function check() {
clearInterval(tid);
if(people[secondchocie] === people[firstchocie]) {
cntr++;
(cntr === numOfMatches) {
stop();
score = checkScore(amountGoes);
$('#gameFinished').append('<p>Well done, you managed to complete the game your score is <span>' + score + '</span></p>');
}
turns = 0;
return;
} else {
document.images[firstchocie + numOfImages].src = backcard;
document.images[secondchocie + numOfImages].src = backcard;
turns = 0;
return;
}
}
我无法创建评论,因此将其添加到答案中。
虽然我同意lukas.pukenis ...
如果未预先加载更改图像,则可能需要一些时间。 测试方法:在开始游戏之前,通过将它们添加到页面中的其他位置(即带有IMG标签),尝试将它们添加到浏览器缓存中。
然后,您将确保它们在缓存中。
编辑:
我最近使用了这个:
var cache = [];
function preLoadImages(arrImg)
{
var args_len = arrImg.length;
for (var i = args_len; i--;)
{
var cacheImage = document.createElement('img');
cacheImage.src = arrImg[i];
cache.push(cacheImage);
}
}
preLoadImages(['images/img1.png','images/img2.png','images/img3.png',]);
您可以将所需的所有图像添加到javascript数组。
如果您快速学习:),可以执行以下操作:如果您的页面是由php生成的,则可以让php读取整个图像目录,并将页面中的文件名作为javascript代码写入。 或者,您可以创建一个ajax请求,该请求将返回图像的所有路径并将其作为回调发送到preload函数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.