Как мне (или следует) расширить Modernizr.load() для предварительной загрузки изображений?

Идея в том, что страница /something/index.html загружена. Но, прежде чем я покажу это, его зависимости (в данном случае css и изображения) предварительно загружены.

Modernizr.load({
    load: ['/something/styles.css', '/something/image1.jpg'],
    complete: showFile
 });

Я изучил подключаемый модуль jQuery "imagesLoaded" Пола Айриша, но я предпочитаю простоту использования уже имеющегося у меня загрузчика. Я знаю, что YepNope (и Modernizr.load) не являются универсальными предварительными загрузчиками, но я чувствую, что это самый чистый способ сделать это.

Буду признателен за любые мысли о том, как реализовать предварительную загрузку изображения в скрипт загрузки Modernizr/YepNope.

nz


person nathanziarek    schedule 26.08.2011    source источник


Ответы (1)


В документации yepnope указано, что префикс preload! «должен» работать с некоторыми другими типами mime.

Можешь попробовать

Modernizr.load('preload!something/image1.jpg');

Эта работа для меня.

Не забудьте добавить плагин префикса (иначе вы получите ошибку, когда движок js попытается выполнить изображение):

yepnope.addPrefix( 'preload', function ( resource ) {
    resource.noexec = true;
    return resource;
});
person Placoplatr    schedule 03.10.2011
comment
Я пробовал вызов предварительной загрузки дюжину раз и ни разу не подумал, что мне нужно расширить yepnope с помощью плагина (я просто предположил, что это часть скрипта). Спасибо, что доказали, что мое понимание прочитанного не там, где должно быть! - person nathanziarek; 06.10.2011