使用jquery嵌套加载图像

时间:2010-03-09 12:05:15

标签: jquery image load loading

我需要在屏幕上加载2个或更多图像,并且仅在加载所有图像时才显示转换。

我在load()方面遇到了一些问题 这是我的功能 它显示了一个带有加载消息的div,当加载img时,它隐藏了loadig消息并使用可视转换调用了一个函数(transizione();)

 function load_img(sezione) {
  if (sezione==1)   {sfondo = "sfondo2.jpg"; footer = "footer1.jpg";} 
  else if (sezione==2) {sfondo = "sfondo3.jpg"; footer = "footer2.jpg";}
  else if (sezione==3) {sfondo = "sfondo4.jpg"; footer = "footer3.jpg";}
  else if (sezione==4) {sfondo = "sfondo5.jpg"; footer = "footer4.jpg";}

  $("#loading").fadeIn();

  $("#sfondo2").load(function () {
   $("#loading").hide();
   transizione();
     }).attr('src', 'img/'+sfondo);

 }

如何修改它以调用2张图像? 我对load()如何为图像工作感到困惑

由于

朱塞佩

1 个答案:

答案 0 :(得分:1)

图像的“加载”功能用于设置事件处理程序。换句话说,它允许您提供在图像完全加载时调用的函数。

如果您要等待加载多个图片,并且当他们全部加载时您想要执行某些操作,则可以设置如下内容:

var $images = $('#image1, #image2'), count = $images.length;
$images.load(function() {
  --count;
  if (count === 0) {
    // here the count is zero, so all images are ready
    transizione(); // ? whatever you want
  }
});

请参阅?这使得所有图像都具有相同的“加载”处理程序,它所做的只是倒计时直到所有不同的图像都准备就绪(因为计数将为零)。

也许我不明白你的需要,Gusepo。