为Javascript游戏显示卡片图像的最有效方法

为Javascript游戏显示卡片图像的最有效方法,javascript,image,Javascript,Image,如果我有一些Javascript游戏的卡片图像,那么显示这些图像的最有效方式是什么? 是否最好仅使用相同的图像URL创建一个新对象? 我是否应该预加载所有图像,然后隐藏它们并克隆图像对象的实例? 还有其他方法吗?调用了我所做的一个选项。基本上,您要做的是将所有图像合并成一个大图像,然后使用CSS通过设置宽度和左属性来显示所需的图像。优点是所有的图像都是一次加载的,因为它只有一个大图像。我做的一个选项被调用。基本上,您要做的是将所有图像合并成一个大图像,然后使用CSS通过设置宽度和左属性来显示所需

如果我有一些Javascript游戏的卡片图像,那么显示这些图像的最有效方式是什么?
是否最好仅使用相同的图像URL创建一个新对象?
我是否应该预加载所有图像,然后隐藏它们并克隆图像对象的实例?

还有其他方法吗?

调用了我所做的一个选项。基本上,您要做的是将所有图像合并成一个大图像,然后使用CSS通过设置
宽度
属性来显示所需的图像。优点是所有的图像都是一次加载的,因为它只有一个大图像。

我做的一个选项被调用。基本上,您要做的是将所有图像合并成一个大图像,然后使用CSS通过设置
宽度
属性来显示所需的图像。优点是所有图像都是一次加载的,因为它只是一个大图像。

就显示它们的最有效方式而言:可能会替换通用img元素的“src”属性。 至于预加载:可能是个好主意。预加载图像所需做的一切如下

var preloadImg = new Image();
preloadImg.src = "blah";

这样就可以将它加载到缓存中,您就可以开始了。

最有效的方法是:可能替换通用img元素的“src”属性。 至于预加载:可能是个好主意。预加载图像所需做的一切如下

var preloadImg = new Image();
preloadImg.src = "blah";

这样就可以将其加载到缓存中,您就可以开始了。

最好将它们全部预加载,这样它们就可以根据需要显示,即使在第一次请求时也不会延迟。确保它们在用户端缓存


你有没有想过为你的图像使用CSS精灵?这可能会大大加快速度,因为您不必为52个不同的图像请求标题。你可以把13张牌放在一行,每套衣服有4行牌,然后只需相应地调整每张牌的背景位置,你就可以保证一旦一张牌加载,它们就都加载了。

最好将它们全部预加载,这样即使在第一次被请求时,它们也不会延迟地显示出来。确保它们在用户端缓存

你有没有想过为你的图像使用CSS精灵?这可能会大大加快速度,因为您不必为52个不同的图像请求标题。你可以把13张牌放在一行,每套衣服有4行牌,然后只需相应地调整每张牌的背景位置,你就可以保证一旦一张牌加载,它们都加载了。

  • 当然可以预装
  • 尽可能使用精灵,例如,您可以在一个图像中加载每件衣服。然后,您可以加载每张卡作为div的背景
  • 只要您从相同的URL加载图像。浏览器应该使用本地缓存的客户端文件,而不是从服务器请求它
  • 克隆应该是好的,但它必须是深度克隆,否则操纵一个克隆将影响所有其他克隆
      • 当然可以预装
      • 尽可能使用精灵,例如,您可以在一个图像中加载每件衣服。然后,您可以加载每张卡作为div的背景
      • 只要您从相同的URL加载图像。浏览器应该使用本地缓存的客户端文件,而不是从服务器请求它
      • 克隆应该是好的,但它必须是深度克隆,否则操纵一个克隆将影响所有其他克隆

      最有效的方法是CSS3:最有效的方法是CSS3: