当堆栈中的第一个图像加载时隐藏“loader”div?

时间:2012-11-03 19:57:07

标签: jquery

我正在使用覆盖页面内容的div,直到加载幻灯片的集合中的第一个图像为止。我用来隐藏这个div的代码如下,但它不起作用:

$(function() {
  $('.slide').first(function() {
    $(this).load(function() {
      $('#loader').fadeOut('slow');
    });
  });
});

知道为什么吗?即使在整个页面加载后,“loader”div也不会隐藏。我在运行$('#loader')方面取得了一些成功.fadeOut('slow'); on(window).load()。

1 个答案:

答案 0 :(得分:1)

您的图片是通过ajax加载的,并且在DOM首次加载时不存在。在将第一个图像添加到DOM后尝试隐藏加载图像。

$.each(images, function(index) {
  $('#slideshow').append('<div class="slide" style="background-image:url(' + this + ');"></div>');
  if(index === 0){
    $('#loader').fadeOut('slow');
  }
});