预加载时图像数组预加载显示沙漏光标

时间:2012-09-03 01:01:03

标签: javascript preload

我使用以下脚本预加载图片;想知道如何在等待完成预加载时显示沙漏光标。

function preload_images() {

            var i;
            for (i = 1; i < sl; i++) {
                images[i] = new Image();
                $('#selector').css('cursor', 'wait');
                var name = impath.toString() + imStart.toString() + i + ext;
                images[i].src = 'ImageHandler.ashx?img=' + name + '&window=50&level=50 &slice=0';
                $('#selector').css('cursor', 'default');
            }
        }

1 个答案:

答案 0 :(得分:1)

使用图像'loaderror(如果没有加载任何图像)事件来计算已加载的图像数量,以及所有加载移除光标的时间。

    function preload_images() {
        var i, count = 0;
        $('#selector').css('cursor', 'wait');
        for (i = 0; i < sl; i++) {
            images[i] = new Image();
            var name = impath.toString() + imStart.toString() + i + ext;
            image[i].onload = image[i].onerror = function(){
                count++;
                if (count == sl){
                    $('#selector').css('cursor', 'default');
                }
            }                
            images[i].src = 'ImageHandler.ashx?img=' + name + '&window=50&level=50 &slice=0';
        }
    }