1

次のスクリプトを使用して画像をプリロードしています。プリロードが完了するのを待っている間に砂時計カーソルを表示する方法を知りたいです。

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');
            }
        }
4

1 に答える 1

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';
        }
    }
于 2012-09-03T01:09:38.610 に答える