jQuery加载函数 - 不可见的图像

时间:2012-09-10 15:08:16

标签: javascript jquery function

我使用load()函数检查图像是否已加载。如果是,那么我正在使用其他2个功能。 代码如下所示:

$('#img-1').load(function(){        
     someFunction1();
     loadIcons();       
});

someFunction1()工作正常,但是loadIcons()有类,它在CSS文件中声明了背景图像,这个图像是不可见的(就像它尚未加载)

loadIcons():

function loadIcons(){
        $('#gallery').append('<div class="icon" id="icon-1">');
        $('#icon-1').append('<span></span>');
        $('#icon-1').css({
            'top': parseInt(top),
            'left': parseInt(left)
        });
}

这些元素(divspan)在Firebug中可见,但来自.icon类的图像是不可见的。知道怎么解决吗?

    $(document).ready(function(){

    someFunction1()
    {       
            $('#spinner').remove();
            $('#spinner-transparent').css({
                'opacity' : 0
            });
    }

    function loadIcons()
    {
        //code above
    }


    $('#img-1').one('load', function(){     
          someFunction1();
          loadIcons();       
        }).each(function() {
  if(this.complete) $(this).load();
});

注意:微调器是<div>,里面装载.gif

1 个答案:

答案 0 :(得分:0)

我曾经遇到过$ .load的问题而最终做了类似的事情:

var img_load_callback = function () {...};
var img = new Image();
img.onload = img_load_callback; // this must be set before img.src
img.src = 'whatever.jpg';