2009-03-12 5 views
2

Я в настоящее время предварительной загрузки изображения Javascript сценарий:Предварительная загрузка IMG элементы

function MM_preloadImages() { 
    var d = document; 

    if(d.images){ 
    if(!d.MM_p) 
     d.MM_p=new Array(); 

    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; 

    for(i=0; i<a.length; i++){ 
     if (a[i].indexOf("#")!=0){ 
      d.MM_p[j]=new Image; 
      d.MM_p[j++].src= '/img' + a[i]; 
     } 
    } 
    } 
} 

Проблема в том, что я должен вручную обновить массив, когда изображения будут добавлены удалены и т.д.

есть в любом случае автоматизации этого или есть библиотека.

Большинство URL-адресов изображений являются элементами hrefs.

Очевидно, я мог бы написать что-то серверное, но я хочу проверить, есть ли что-то там уже.

ответ

1

Вот кто-то сделал то, что вы пытаетесь сделать с jQuery:

http://www.filamentgroup.com/lab/update_automatically_preload_images_from_css_with_jquery/

Edit: На самом деле это не совсем то, что вы ищете, так как это предварительно загружает изображения из CSS-файлов - I я собираюсь оставить это здесь, если это все еще полезно.

0

Проблема заключается в том, что элементы, имеющиеся в DOM для JS для проверки изображений, уже загружаются в любом случае.

AFAIK нет возможности сделать это (проверка на основе CSS работает, потому что это загружается до содержимого тела), но превосходным решением проблемы в целом является CSS spriting.

Смежные вопросы