更改6张图像然后预加载,但图像在更改前预先加载

时间:2010-07-15 05:38:13

标签: javascript image-manipulation preload

我有3张马/骑士跑步的图像。我交替使它看起来像它的运行。我正在使用GD来改变特定用户的骑士/马的颜色。我改变图像颜色然后预加载3个图像。但是当我的程序改变了他们已经预装的图像时。所以我必须加载页面两次以获得正确的knight.horse颜色到apear。我该如何解决?

代码在标题中。函数loadImage获取基本图像并更改颜色并将其保存在pic /#。gif文件位置。然后预加载图像并在末尾添加时间,以便加载新图像而不是缓存中的图像。

loadImage('pic/4.gif','pic/knightcolor0.gif',"1")

loadImage('pic/7.gif','pic/knightcolor0b.gif',"2")
loadImage('pic/5.gif','pic/knightcolor1.gif',"")
loadImage('pic/6.gif','pic/knightcolor2.gif',"")
loadImage('pic/8.gif','pic/knightcolor1R.gif',"")
loadImage('pic/9.gif','pic/knightcolor2R.gif',"")


img1 = new Image();
img1.src = "pic/4.gif?t="+new Date().getTime()
img2 = new Image();
img2.src =  "pic/5.gif?t="+new Date().getTime()
img3 = new Image();
img3.src =  "pic/6.gif?t="+new Date().getTime()
img4 = new Image();
img4.src = "pic/7.gif?t="+new Date().getTime()
img5 = new Image();
img5.src =  "pic/8.gif?t="+new Date().getTime()
img6 = new Image();
img6.src =  "pic/9.gif?t="+new Date().getTime()

请帮助我已经尝试了很多东西来修复它已经工作了一个星期了,现在无法弄明白了!

1 个答案:

答案 0 :(得分:0)

如果它正在调用您不想要的图像,那么预加载对您没有任何帮助。如果您将预加载设置为loadImage到{{1}}功能,则在右图像可用之前不会执行。

或者,您可以缩小颜色选择范围吗?在这样的情况下,让这些图像准备好使用是不可想象的。